mirror of
https://github.com/OSURoboticsClub/Rover_2017_2018.git
synced 2025-11-08 18:21:15 +00:00
created rover_statuses.py for Ground Control data -- very very basic version without any GUI interaction, just data pulling from system_statuses topic
This commit is contained in:
57
rover/system_statuses/scripts/.idea/workspace.xml
generated
57
rover/system_statuses/scripts/.idea/workspace.xml
generated
@@ -11,12 +11,26 @@
|
||||
</component>
|
||||
<component name="FileEditorManager">
|
||||
<leaf>
|
||||
<file leaf-file-name="system_statuses_node.py" pinned="false" current-in-tab="true">
|
||||
<file leaf-file-name="system_statuses_node.py" pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/system_statuses_node.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="372">
|
||||
<caret line="105" column="55" lean-forward="true" selection-start-line="105" selection-start-column="55" selection-end-line="105" selection-end-column="55" />
|
||||
<folding />
|
||||
<state relative-caret-position="-732">
|
||||
<caret line="17" column="63" lean-forward="false" selection-start-line="17" selection-start-column="36" selection-end-line="17" selection-end-column="63" />
|
||||
<folding>
|
||||
<element signature="e#22#43#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="rover_statuses.py" pinned="false" current-in-tab="true">
|
||||
<entry file="file://$PROJECT_DIR$/rover_statuses.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="708">
|
||||
<caret line="43" column="40" lean-forward="false" selection-start-line="43" selection-start-column="40" selection-end-line="43" selection-end-column="40" />
|
||||
<folding>
|
||||
<element signature="e#22#43#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
@@ -35,12 +49,21 @@
|
||||
</file>
|
||||
</leaf>
|
||||
</component>
|
||||
<component name="FileTemplateManagerImpl">
|
||||
<option name="RECENT_TEMPLATES">
|
||||
<list>
|
||||
<option value="Python Script" />
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
<component name="IdeDocumentHistory">
|
||||
<option name="CHANGED_PATHS">
|
||||
<list>
|
||||
<option value="$PROJECT_DIR$/camera_2_updater.py" />
|
||||
<option value="$PROJECT_DIR$/system_statuses.py" />
|
||||
<option value="$PROJECT_DIR$/node_statuses.py" />
|
||||
<option value="$PROJECT_DIR$/system_statuses_node.py" />
|
||||
<option value="$PROJECT_DIR$/rover_statuses.py" />
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
@@ -159,6 +182,14 @@
|
||||
</component>
|
||||
<component name="editorHistoryManager">
|
||||
<entry file="file://$PROJECT_DIR$/system_statuses.py" />
|
||||
<entry file="file://$PROJECT_DIR$/node_statuses.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="72">
|
||||
<caret line="3" column="8" lean-forward="false" selection-start-line="3" selection-start-column="8" selection-end-line="3" selection-end-column="8" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/camera_2_updater.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="216">
|
||||
@@ -171,9 +202,21 @@
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/system_statuses_node.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="372">
|
||||
<caret line="105" column="55" lean-forward="true" selection-start-line="105" selection-start-column="55" selection-end-line="105" selection-end-column="55" />
|
||||
<folding />
|
||||
<state relative-caret-position="-732">
|
||||
<caret line="17" column="63" lean-forward="false" selection-start-line="17" selection-start-column="36" selection-end-line="17" selection-end-column="63" />
|
||||
<folding>
|
||||
<element signature="e#22#43#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/rover_statuses.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="708">
|
||||
<caret line="43" column="40" lean-forward="false" selection-start-line="43" selection-start-column="40" selection-end-line="43" selection-end-column="40" />
|
||||
<folding>
|
||||
<element signature="e#22#43#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
|
||||
51
rover/system_statuses/scripts/rover_statuses.py
Executable file
51
rover/system_statuses/scripts/rover_statuses.py
Executable file
@@ -0,0 +1,51 @@
|
||||
#!/usr/bin/env python
|
||||
import rospy, os.path
|
||||
from system_statuses.msg import RoverSysStatus
|
||||
|
||||
|
||||
class RoverStatuses:
|
||||
|
||||
def __init__(self):
|
||||
|
||||
rospy.init_node('RoverStatuses')
|
||||
|
||||
self.pub = rospy.Publisher('rover_statuses_chatter', RoverSysStatus, queue_size=10)
|
||||
|
||||
# Test Subscription for updating camera_undercarriage
|
||||
rospy.Subscriber('rover_system_status_chatter', RoverSysStatus, self.__sub_callback)
|
||||
|
||||
self.msg = RoverSysStatus()
|
||||
|
||||
def __sub_callback(self, data):
|
||||
self.msg.UTC_GPS_time = data.UTC_GPS_time
|
||||
self.msg.bogie_connection_1 = data.bogie_connection_1
|
||||
self.msg.bogie_connection_2 = data.bogie_connection_2
|
||||
self.msg.bogie_connection_3 = data.bogie_connection_3
|
||||
self.msg.arm_connection_status = data.arm_connection_status
|
||||
self.msg.arm_end_effector_connection_statuses = data.arm_end_effector_connection_statuses
|
||||
self.msg.camera_zed = data.camera_zed
|
||||
self.msg.camera_undercarriage = data.camera_undercarriage
|
||||
self.msg.camera_chassis = data.camera_chassis
|
||||
self.msg.camera_main_navigation = data.camera_main_navigation
|
||||
self.msg.sample_containment_connection_status = data.sample_containment_connection_status
|
||||
self.msg.tower_connection_status = data.tower_connection_status
|
||||
self.msg.chassis_pan_tilt_connection_status = data.chassis_pan_tilt_connection_status
|
||||
self.msg.GPS_connection_status = data.GPS_connection_status
|
||||
self.msg.jetson_CPU = data.jetson_CPU
|
||||
self.msg.jetson_RAM = data.jetson_RAM
|
||||
self.msg.jetson_EMMC = data.jetson_EMMC
|
||||
self.msg.jetson_NVME_SSD = data.jetson_NVME_SSD
|
||||
self.msg.FrSky_controller_connection_status = data.FrSky_controller_connection_status
|
||||
rospy.loginfo(self.msg)
|
||||
|
||||
def run(self):
|
||||
rospy.Subscriber('rover_system_status_chatter', RoverSysStatus, self.__sub_callback)
|
||||
|
||||
# Update GUI Here? (Most likely)
|
||||
|
||||
rospy.spin()
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
rover_statuses = RoverStatuses()
|
||||
rover_statuses.run()
|
||||
@@ -22,8 +22,6 @@ class SystemStatuses:
|
||||
|
||||
self.msg = RoverSysStatus()
|
||||
self.__set_msg_values()
|
||||
# self.__set_cameras()
|
||||
# self.__UTC_GPS_Time()
|
||||
|
||||
# Simple Subscriber test boolean -- camera_2_updated.py
|
||||
# self.hasCameraUndercarriageChanged = False
|
||||
@@ -107,8 +105,8 @@ class SystemStatuses:
|
||||
|
||||
def run(self):
|
||||
r = rospy.Rate(10)
|
||||
rospy.loginfo(self.msg)
|
||||
self.pub.publish(self.msg)
|
||||
# rospy.loginfo(self.msg)
|
||||
# self.pub.publish(self.msg)
|
||||
while not rospy.is_shutdown():
|
||||
if (self.msg.camera_zed != os.path.exists(self.system_path_locations[0]) or
|
||||
self.msg.camera_undercarriage != os.path.exists(self.system_path_locations[1]) or
|
||||
|
||||
Reference in New Issue
Block a user