Changes for page SES-PRO Robotic Arm UI

Last modified by Eric Nantel on 2024/10/16 14:33

From version < 25.3 >
edited by Eric Nantel
on 2024/10/09 16:02
To version < 13.1 >
edited by Eric Nantel
on 2024/09/23 07:59
< >
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -6,419 +6,186 @@
6 6  
7 7  {{toc/}}
8 8  
9 -= Installation =
10 -
11 -Windows 7 Operating System or above
12 -
13 13  = Description =
14 14  
15 -The Lynxmotion Servo Erector Set Professional (SES PRO) Arm Interface is a simple software which allows a user to control any of the Lynxmotion Professional Modular robotic arms in their default configuration. The two compatible gripper kits which are compatible with the SES PRO system (based on the DH Robotics PGE-50-40 and CGE-10-10 DC grillers) can also be controlled via this interface in each of their possible configurations. The included manual jog feature can be used to either position each joint angle, or move to specific cartesian coordinates. Arm (and gripper) positions can then be recorded as part of the built-in sequencer. A 3D display of the arm shows the position of the arm, and a graph can be used to show various information to the user. In order to get a better understanding of the protocol, commands sent to the arm are shown in the interface, and a user input field are standard.
16 16  
17 17  = Features =
18 18  
19 -* Angular and cartesian positioning of the end effector
20 -* 3D graphical display of the appropriate robotic arm and end effector
21 -* Sequencer to record and play back frames (single, looped or infinite)
22 -* Error checking (speed, temperature etc.)
23 -* Command output and user input
24 -* Safety (Software E-Stop, Halt&Hold & Limp)
25 25  
26 -|(% colspan="2" %)(((
27 -= User Guide =
28 -)))
29 -|(% style="width:25px" %) |(((
30 -Pressing the i "Information" icon in the software will bring you to this page. Before proceeding with the guide, it is important to note the following:
15 +<direct commands>
31 31  
32 -* Neither the servos nor the arm are meant to be operated in proximity of humans as they do not have "collaborative" (COBOT) features and do not detect collision
33 -* The servos use stepper motors and do NOT include mechanical brakes. If the stepper motor is unable to retain or move to a desired angle (insufficient torque), the motor will rotate freely as opposed to hold the last position
34 -)))
35 -|(% colspan="2" %)(((
36 -== IMPORTANT ==
37 -)))
38 -| |(((
39 -=== Payload Considerations ===
17 +* Does not require ‘#’ and ‘\r’ chars, example for #254Q\r the user should enter 254Q.
18 +* The replies of the query commands are shown in the text field below.
19 +* The commands are validated, and it shows a notification in case of error.
20 +* Supported commands:
40 40  
41 -1. The rated payload for each arm does NOT include an end effector, nor any added distance between the center of mass of the payload and the output of the final joint. Each of the two compatible Lynxmotion PRO grippers reduce the maximum payload of each arm, and it is up to the user to known and understand the concept of "torque" and center of mass before adding an end effector and payload.
42 -1. The rated maximum payload for each arm (at full reach) is at the rated speed for each motor. Moving any joint at a higher speed will decrease the payload capacity of the robot.
43 -1. Although each servo can provide significantly more torque than is needed for the rated payload (and therefore means the arm can support much higher loads at lower speeds, the mechanical and modular structure of the arms may fail. We strongly suggest testing and using each arm in a highly controlled and safe setting where, if a failure should occur with one or more joints, that nothing will break should the arm fall.
44 -1. The stepper motors provide the highest torque at low speeds, and lower torque at high speeds. Note that the maxium torque is not at the lowest speed as the torque to rpm curve for each servo resembles a "mountain".
45 -)))
46 -| |(((
47 -=== Emergency ===
22 +Action:
48 48  
49 -Before using the arm, it is important that a user know what to do when an issue or emergency arises where the arm must be stopped quickly. The following emergency options are available based on severity:
24 + # Communication setup
50 50  
51 -**Halt & Hold**
26 + RESET = "RESET"
52 52  
53 -This will stop every joints and hold them in their last recorded angular positions. The corresponding command is #254H<cr>.
28 + DEFAULT_CONFIGURATION = "DEFAULT"
54 54  
55 -**Limp**
30 + FIRMWARE_UPDATE_MODE = "UPDATE"
56 56  
57 -All joints will go limp which mean there will be nothing avoiding them to turn freely (potentially causing the arm to fall). The high gear ratio of the strain wave gearing does mean there is some (low) level of resistant to rotation, but the gears and motor are nto "locked" and as such, the arm may fall. The corresponding command is #254L<cr>.
32 + CONFIRM_CHANGES = "CONFIRM"
58 58  
59 -**Software Stop**
34 + # Motion
60 60  
61 -The E-stop button within the software sets all joints to limp.
36 + POSITION = "D"
62 62  
63 -**Hardware E-Stop**
64 -A hardware E-stop (push to cut power) button is located on the power supply which will cut electricity to all actuators. Similar to a limp command, this can possibly cause the arm to fall. To reset this button, rotate the red "mushroom" in the direction indicated by the white arrows and it will spring out.
65 -)))
66 -|(% colspan="2" %)(((
67 -== Arm Connection ==
68 -)))
69 -| |(((
70 -**Model**
38 + MOVE_DEGREES = "MD"
71 71  
72 -The software currently supports the following Lynxmotion PRO Arms:
40 + WHEEL_MODE_DEGREES = "WD"
73 73  
74 -* 550mm 5DoF
75 -* 550mm 6DoF
76 -* 900mm 5DoF
77 -* 900mm 6DoF
42 + WHEEL_MODE_RPM = "WR"
78 78  
79 -In practice, each 5DoF arm has joint 4 at a fixed angle, otherwise the arms are identical to the 6DoF. Users can always purchase the missing actuator to upgrade to a 6DoF.
44 + HALT_AND_HOLD = "H"
80 80  
81 -**COM Port**
46 + LIMP = "L"
82 82  
83 -The first joint at the base (J1) must be connected via USB to a computer running the sofware. No other joints should have a USB connection. A USB 3.0 port or higher on the computer is suggested, as the lower communication speeds fo USB 2.0 or 1.0 may impede communication and cause unecessary delay or issues. 
48 + # Motion setup
84 84  
85 -**Connect**
50 + ORIGIN_OFFSET = "O"
86 86  
87 -Once the COM port has been selection, the CONNECT button can be pressed, and once a servo has been found, the light next to it will go from red to green.
88 -)))
89 -|(% colspan="2" %)(((
90 -== Gripper Controls ==
91 -)))
92 -| |(((
93 -**Model**
52 + ANGULAR_RANGE = "AR"
94 94  
95 -The software currently supports two models of Lynxmotion PRO compatible grippers based on DH Robots' PGE-50-40 and CGE-10-10 electric grippers. The Lynxmotion kits include hardware to mount the fingers in multiple different offsets for smaller or larger objects. In the sequencer, the position of the fingers for each gripper are included in the sequencer as J7.
54 + ANGULAR_ACCELERATION = "AA"
96 96  
97 -* PGE-50-40 (40mm default configuration)
98 -* PGE-50-40 (60mm configuration)
99 -* PGE-50-40 (80mm configuration)
100 -* CGE-10-10 (20mm configuration)
101 -* CGE-10-10 (40mm configuration)
102 -* CGE-10-10 (60mm configuration)
56 + ANGULAR_DECELERATION = "AD"
103 103  
104 -**COM Port**
58 + GYRE_DIRECTION = "G"
105 105  
106 -Choose the appropriate COM port to which the gripper is connected (via its own USB cable). If you are not certain, you can check Windows -> Device Manager
60 + MAX_SPEED_DEGREES = "SD"
107 107  
108 -**Baudrate**
62 + MAX_SPEED_RPM = "SR"
109 109  
110 -The DH Robotics grippers provide the option to change the baud rate, though the default is 115200. If the gripper is configured by the user to a different baud rate, it is important to select the corresponding baud rate in teh software.
64 + # RGB LED
111 111  
112 -**Initialize**
66 + LED_COLOR = "LED"
113 113  
114 -Initializing the gripper opens it fully. This is available should the user encounter issues with positioning and need to re-zero the fingers.
68 + Query:
115 115  
116 -**Connect**
70 + # Communication setup
117 117  
118 -Pressing CONNECT establishes a connection to the gripper and goes through the initilization process once, opening the gripper fully. Once connection has been established, the light next to the button will go from red to green.
72 + ID_NUMBER = "QID"
119 119  
120 -**Speed**
74 + ENABLE_CAN_TERMINAL = "QET"
121 121  
122 -The speed of motion can be adjusted either via the plus or minus buttons or entering a value between 0 and 100 and pressing enter.
76 + USB_CONNECTION_STATUS = "QUC"
123 123  
124 -**Force**
78 + # Motion
125 125  
126 -The maximum force exerted by the gripper can be adjusted either via the plus or minus buttons or entering a value between 0 and 100 and pressing enter.
80 + POSITION = "QD"
127 127  
128 -**Open / Close**
82 + WHEEL_MODE_DEGREES = "QWD"
129 129  
130 -These are shortcut buttons to either fully open or fully close the gripper.
84 + WHEEL_MODE_RPM = "QWR"
131 131  
132 -**Sequencer**
86 + MOTION_STATUS = "Q"
133 133  
134 -The sequencer displays the gripper position as joint 7 (J7).
88 + MOTION_TIME = "QMT"
135 135  
136 -HINT: If you want the gripper to open or close on an object only at the end of a motion, create a separate frame where only J7 moves.
137 -)))
138 -|(% colspan="2" %)(((
139 -== 3D Model ==
140 -)))
141 -| |(((
142 -The 3D model of the arm is shown as reference at all times. The display also includes a virtual plane to denote  the X-Y plane. The model updates based on the selection of the arm, gripper and finger configuration.
90 + CURRENT_SPEED = "QCS"
143 143  
144 -**View Controls**
145 145  
146 -Zoom: Shift + Middle Scroll
93 + # Telemetry
147 147  
148 -Rotate: Shift + Middle Mouse
95 + MODEL_STRING = "QMS" 
149 149  
150 -Pan: None
151 -)))
152 -|(% colspan="2" %)(((
153 -== Manual Move ==
154 -)))
155 -| |(((
156 -**Angular Control**
97 + FIRMWARE_VERSION = "QF" 
157 157  
158 -In angular mode, the user can control the angle of each joint
99 + SERIAL_NUMBER = "QN" 
159 159  
160 -**Coordinates Control**
101 + TEMP_CONTROLLER_ERROR = "QTCE" 
161 161  
162 -In coordinate control the user can control the cartesian position of the end effector
103 + TEMP_CONTROLLER_WARNING = "QTCW" 
163 163  
164 -**End Effector Lock**
105 + CURRENT = "QC"
165 165  
166 -The orientation of the end effector can be locked.
167 -)))
168 -|(% colspan="2" %)(((
169 -== Direct Command ==
170 -)))
171 -| |(((
172 -This section allow the user to send commands using the [[LSS-PRO Communication Protocol>>path:/info/wiki/lynxmotion/view/ses-pro/lss-pro/lss-p-communication-protocol/]] directly if required.
107 + ACCX = "QIX"
173 173  
174 -A few things to keep in mind when using this:
109 + ACCY = "QIY"
175 175  
176 -* Make sure you know what you are doing as you can make the arm move in __dangerous__ ways.
177 -* Sending commands does not require ‘#’ and ‘\r’ chars.
178 -** example for #2\r you should enter 2Q and press the "SEND" button
179 -* The commands are validated, and it shows a notification in case of error.
180 -* The replies of queries are shown in the text field below.
181 -)))
182 -| |
183 -| |
184 -| |
185 -| |
186 -| |
187 -| |
188 -| |
189 -| |
190 -| |
191 -| |
192 -| |
193 -| |
194 -| |
195 -| |
196 -| |
197 -| |
198 -| |
199 -| |
200 -| |
201 -| |
202 -| |
203 -| |
204 -| |
205 -| |
206 -| |
207 -| |
208 -| |
209 -| |
210 -| |
211 -| |
212 -| |
213 -| |
214 -| |
215 -| |
216 -| |
217 -| |
218 -| |
219 -| |
220 -| |
221 -| |
222 -| |
223 -| |
224 -| |
225 -| |
226 -| |
227 -| |
228 -| |
229 -| |
230 -| |
231 -| |
232 -| |
233 -| |
234 -| |
235 -| |
236 -| |
237 -| |
238 -| |
239 -| |
240 -| |
241 -| |
111 + ACCZ = "QIZ"
242 242  
243 -= =
113 + ACCALPHA = "QIA"
244 244  
245 -= User Guide =
115 + ACCBETA = "QIB"
246 246  
247 -Pressing the i "Information" icon in the software will bring you to this page. Before proceeding with the guide, it is important to note the following:
117 + ACCGAMMA = "QIG"
248 248  
249 -* Neither the servos nor the arm are meant to be operated in proximity of humans as they do not have "collaborative" (COBOT) features and do not detect collision
250 -* The servos use stepper motors and do NOT include mechanical brakes. If the stepper motor is unable to retain or move to a desired angle (insufficient torque), the motor will rotate freely as opposed to hold the last position
119 + TEMPMCU = "QTM"
251 251  
252 -== IMPORTANT: Payload Considerations ==
121 + TEMPPROBE = "QTP"
253 253  
254 -1. The rated payload for each arm does NOT include an end effector, nor any added distance between the center of mass of the payload and the output of the final joint. Each of the two compatible Lynxmotion PRO grippers reduce the maximum payload of each arm, and it is up to the user to known and understand the concept of "torque" and center of mass before adding an end effector and payload.
255 -1. The rated maximum payload for each arm (at full reach) is at the rated speed for each motor. Moving any joint at a higher speed will decrease the payload capacity of the robot.
256 -1. Although each servo can provide significantly more torque than is needed for the rated payload (and therefore means the arm can support much higher loads at lower speeds, the mechanical and modular structure of the arms may fail. We strongly suggest testing and using each arm in a highly controlled and safe setting where, if a failure should occur with one or more joints, that nothing will break should the arm fall.
257 -1. The stepper motors provide the highest torque at low speeds, and lower torque at high speeds. Note that the maxium torque is not at the lowest speed as the torque to rpm curve for each servo resembles a "mountain".
123 + TEMPPCB = "QT"
258 258  
259 -== IMPORTANT: Emergency ==
125 + ERROR_FLAGS = "QEF"
260 260  
261 -Before using the arm, it is important that a user know what to do when an issue or emergency arises where the arm must be stopped quickly. The following emergency options are available based on severity:
262 262  
263 -**Halt & Hold**
128 + # RGB LED
264 264  
265 -This will stop every joints and hold them in their last recorded angular positions. The corresponding command is #254H<cr>.
130 + LED_COLOR = "QLED"
266 266  
267 -**Limp**
132 + LED_BLINKING = "QLB"
268 268  
269 -All joints will go limp which mean there will be nothing avoiding them to turn freely (potentially causing the arm to fall). The high gear ratio of the strain wave gearing does mean there is some (low) level of resistant to rotation, but the gears and motor are nto "locked" and as such, the arm may fall. The corresponding command is #254L<cr>.
134 + LED_INDICATOR = "QLI"
270 270  
271 -**Software Stop**
272 272  
273 -The E-stop button within the software sets all joints to limp.
137 + # Motion setup
274 274  
275 -**Hardware E-Stop**
276 -A hardware E-stop (push to cut power) button is located on the power supply which will cut electricity to all actuators. Similar to a limp command, this can possibly cause the arm to fall. To reset this button, rotate the red "mushroom" in the direction indicated by the white arrows and it will spring out.
139 + ORIGIN_OFFSET = "QO"
277 277  
278 -== Arm Connection ==
141 + ANGULAR_RANGE = "QAR"
279 279  
280 -**Model**
143 + ANGULAR_ACCELERATION = "QAA"
281 281  
282 -The software currently supports the following Lynxmotion PRO Arms:
145 + ANGULAR_DECELERATION = "QAD"
283 283  
284 -* 550mm 5DoF
285 -* 550mm 6DoF
286 -* 900mm 5DoF
287 -* 900mm 6DoF
147 + GYRE_DIRECTION = "QG"
288 288  
289 -In practice, each 5DoF arm has joint 4 at a fixed angle, otherwise the arms are identical to the 6DoF. Users can always purchase the missing actuator to upgrade to a 6DoF.
149 + MAX_SPEED_DEGREES = "QSD"
290 290  
291 -**COM Port**
151 + MAX_SPEED_RPM = "QSR"
292 292  
293 -The first joint at the base (J1) must be connected via USB to a computer running the sofware. No other joints should have a USB connection. A USB 3.0 port or higher on the computer is suggested, as the lower communication speeds fo USB 2.0 or 1.0 may impede communication and cause unecessary delay or issues. 
294 294  
295 -**Connect**
154 + Conf:
296 296  
297 -Once the COM port has been selection, the CONNECT button can be pressed, and once a servo has been found, the light next to it will go from red to green.
156 + # Communication setup
298 298  
299 -== Gripper Controls ==
158 + ID_NUMBER = "CID"
300 300  
301 -**Model**
160 + ENABLE_CAN_TERMINAL = "CET"
302 302  
303 -The software currently supports two models of Lynxmotion PRO compatible grippers based on DH Robots' PGE-50-40 and CGE-10-10 electric grippers. The Lynxmotion kits include hardware to mount the fingers in multiple different offsets for smaller or larger objects. In the sequencer, the position of the fingers for each gripper are included in the sequencer as J7.
162 + USB_CONNECTION_STATUS = "CUC"
304 304  
305 -* PGE-50-40 (40mm default configuration)
306 -* PGE-50-40 (60mm configuration)
307 -* PGE-50-40 (80mm configuration)
308 -* CGE-10-10 (20mm configuration)
309 -* CGE-10-10 (40mm configuration)
310 -* CGE-10-10 (60mm configuration)
164 + # Motion setup
311 311  
312 -**COM Port**
166 + MAX_SPEED_DEGREES = "CSD"
313 313  
314 -Choose the appropriate COM port to which the gripper is connected (via its own USB cable). If you are not certain, you can check Windows -> Device Manager
168 + MAX_SPEED_RPM = "CSR"
315 315  
316 -**Baudrate**
170 + ORIGIN_OFFSET = "CO"
317 317  
318 -The DH Robotics grippers provide the option to change the baud rate, though the default is 115200. If the gripper is configured by the user to a different baud rate, it is important to select the corresponding baud rate in teh software.
172 + ANGULAR_RANGE = "CAR"
319 319  
320 -**Initialize**
174 + ANGULAR_ACCELERATION = "CAA"
321 321  
322 -Initializing the gripper opens it fully. This is available should the user encounter issues with positioning and need to re-zero the fingers.
176 + ANGULAR_DECELERATION = "CAD"
323 323  
324 -**Connect**
178 + GYRE_DIRECTION = "CG"
325 325  
326 -Pressing CONNECT establishes a connection to the gripper and goes through the initilization process once, opening the gripper fully. Once connection has been established, the light next to the button will go from red to green.
180 + # RGB LED
327 327  
328 -**Speed**
182 + LED_COLOR = "CLED"
329 329  
330 -The speed of motion can be adjusted either via the plus or minus buttons or entering a value between 0 and 100 and pressing enter.
184 + LED_BLINKING = "CLB"
331 331  
332 -**Force**
333 333  
334 -The maximum force exerted by the gripper can be adjusted either via the plus or minus buttons or entering a value between 0 and 100 and pressing enter.
187 + Modifier:
335 335  
336 -**Open / Close**
189 + SPEED = "SD"
337 337  
338 -These are shortcut buttons to either fully open or fully close the gripper.
339 -
340 -**Sequencer**
341 -
342 -The sequencer displays the gripper position as joint 7 (J7).
343 -
344 -HINT: If you want the gripper to open or close on an object only at the end of a motion, create a separate frame where only J7 moves.
345 -
346 -== 3D Model ==
347 -
348 -The 3D model of the arm is shown as reference at all times. The display also includes a virtual plane to denote  the X-Y plane. The model updates based on the selection of the arm, gripper and finger configuration.
349 -
350 -**View Controls**
351 -
352 -Zoom: Shift + Middle Scroll
353 -
354 -Rotate: Shift + Middle Mouse
355 -
356 -Pan: None
357 -
358 -== Manual Move ==
359 -
360 -**Angular Control**
361 -
362 -In angular mode, the user can control the angle of each joint
363 -
364 -**Coordinates Control**
365 -
366 -In coordinate control the user can control the cartesian position of the end effector
367 -
368 -**End Effector Lock**
369 -
370 -The orientation of the end effector can be locked.
371 -
372 -== Direct Command ==
373 -
374 -This section allow the user to send commands using the [[doc:ses-pro.lss-pro.lss-p-communication-protocol.WebHome]] directly if required.
375 -
376 -A few things to keep in mind when using this:
377 -
378 -* Make sure you know what you are doing as you can make the arm move in __dangerous__ ways.
379 -* Sending commands does not require ‘#’ and ‘\r’ chars.
380 -** example for #2\r you should enter 2Q and press the "SEND" button
381 -* The commands are validated, and it shows a notification in case of error.
382 -* The replies of queries are shown in the text field below.
383 -
384 -== Command Output ==
385 -
386 -//{Coming Soon}//
387 -
388 -== Telemetry ==
389 -
390 -**Data to Display**
391 -
392 -//{Coming Soon}//
393 -
394 -**Display / Hide Actuator**
395 -
396 -//{Coming Soon}//
397 -
398 -== Sequencer ==
399 -
400 -**Frames**
401 -
402 -//{Coming Soon}//
403 -
404 -**Record **
405 -
406 -//{Coming Soon}//
407 -
408 -**Edit **
409 -
410 -Time, angles, gripper
411 -
412 -//Alt + Left Click = Drag time//
413 -
414 -**Reorder**
415 -
416 -//{Coming Soon}//
417 -
418 -**Play**
419 -
420 -//{Coming Soon}//
421 -
422 -**Errors**
423 -
424 -//{Coming Soon}//
191 + TIME = "T"
ses-pro-robotic-arm-ui-installer.zip
Author
... ... @@ -1,1 +1,0 @@
1 -xwiki:XWiki.ENantel
Size
... ... @@ -1,1 +1,0 @@
1 -212 bytes
Content
Copyright RobotShop 2018