@@ -45,7 +45,7 @@ def __init__(self, readAddress = "tcp://127.0.0.1:5690",
4545
4646 self .currentSelectedAxis = 'None'
4747 self .axesSelected = {'X' :0 ,'Y' :0 ,'Z' :0 ,'A' :0 ,'B' :0 ,'C' :0 ,
48- 'U' :0 ,'V' :0 ,'W' :0 }
48+ 'U' :0 ,'V' :0 ,'W' :0 , 'MPG0' : 0 }
4949 self .readAddress = readAddress
5050 self .writeAddress = writeAddress
5151 LOG .debug ('read port: {}' .format (readAddress ))
@@ -108,7 +108,7 @@ def readMsg(self):
108108
109109 # set our variables from messages from hal_glib
110110 def action (self , msg , data ):
111- LOG .debug ('{} {} ' .format (msg , data ))
111+ LOG .debug ('{} -> {} -> {} ' .format (msg , data , data [ 0 ] ))
112112 if msg == 'jograte-changed' :
113113 self .jogRate = float (data [0 ])
114114 elif msg == 'jograte-angular-changed' :
@@ -120,7 +120,14 @@ def action(self, msg, data):
120120 elif msg == 'joint-selection-changed' :
121121 self .activeJoint = int (data [0 ])
122122 elif msg == 'axis-selection-changed' :
123+ print ('pre axis state' , self .axesSelected ,self .currentSelectedAxis )
123124 flag = 1
125+ if data [0 ] == 'MPG0' :
126+ self .currentSelectedAxis = data [0 ]
127+ flag = 0
128+ self .axesSelected ['MPG0' ] = True
129+ else :
130+ self .axesSelected ['MPG0' ] = False
124131 for i in (self .INFO .AVAILABLE_AXES ):
125132 if data [0 ] == i :
126133 state = True
@@ -129,9 +136,10 @@ def action(self, msg, data):
129136 else :
130137 state = False
131138 self .axesSelected [i ] = int (state )
139+
132140 if flag :
133141 self .currentSelectedAxis = 'None'
134- # print ('axis state', self.axesSelected)
142+ print ('axis state' , self .axesSelected , self . currentSelectedAxis )
135143
136144 # send msg to hal_glib
137145 def writeMsg (self , msg , data ):
@@ -198,18 +206,25 @@ def getSelectedAxis(self):
198206 name = self .currentSelectedAxis
199207 if name == 'None' :
200208 index = - 1
209+ elif name == 'MPG0' :
210+ index = 100
201211 else :
202212 index = 'XYZABCUVW' .index (name )
203213 return index
204214 def setSelectedAxis (self , value ):
205215 if value < 0 :
206216 letter = 'None'
217+ elif value == 100 :
218+ letter = 'MPG0'
207219 else :
208220 letter = 'XYZABCUVW' [value ]
209221 self .writeMsg ('set_selected_axis' , letter )
210222
211223 def isAxisSelected (self , index ):
212- letter = 'XYZABCUVW' [index ]
224+ if index == 100 :
225+ letter = 'MPG0'
226+ else :
227+ letter = 'XYZABCUVW' [index ]
213228 return int (self .axesSelected [letter ])
214229
215230 def __getitem__ (self , item ):
0 commit comments