Changes for page SES-PRO Robotic Arm UI
Last modified by Eric Nantel on 2024/10/16 14:33
Change comment: There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -104,7 +104,7 @@ 104 104 | |(% style="text-align:center; vertical-align:middle" %)[[image:ses-pro-robotic-arm-ui-arm-version-drop.png]]|((( 105 105 **Model** 106 106 107 -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.107 +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 G. 108 108 ))) 109 109 | |(% style="text-align:center; vertical-align:middle" %)[[image:ses-pro-robotic-arm-ui-arm-version.png]]|((( 110 110 * PGE-50-40 (40mm default configuration) ... ... @@ -152,9 +152,9 @@ 152 152 | |(% style="text-align:center; vertical-align:middle" %) |((( 153 153 **Sequencer** 154 154 155 -The sequencer displays the gripper position as joint 7 (J7).155 +The sequencer displays the gripper position as joint G. 156 156 157 -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 J7moves.157 +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 G moves. 158 158 ))) 159 159 | |(% colspan="2" rowspan="1" %)((( 160 160 == 3D Model == ... ... @@ -203,206 +203,10 @@ 203 203 * The commands are validated, and it shows a notification in case of error. 204 204 * The replies of queries are shown in the text field below. 205 205 ))) 206 -| |(% style="text-align:center; vertical-align:middle" %) | 207 -| |(% style="text-align:center; vertical-align:middle" %) | 208 -| |(% style="text-align:center; vertical-align:middle" %) | 209 -| |(% style="text-align:center; vertical-align:middle" %) | 210 -| |(% style="text-align:center; vertical-align:middle" %) | 211 -| |(% style="text-align:center; vertical-align:middle" %) | 212 -| |(% style="text-align:center; vertical-align:middle" %) | 213 -| |(% style="text-align:center; vertical-align:middle" %) | 214 -| |(% style="text-align:center; vertical-align:middle" %) | 215 -| |(% style="text-align:center; vertical-align:middle" %) | 216 -| |(% style="text-align:center; vertical-align:middle" %) | 217 -| |(% style="text-align:center; vertical-align:middle" %) | 218 -| |(% style="text-align:center; vertical-align:middle" %) | 219 -| |(% style="text-align:center; vertical-align:middle" %) | 220 -| |(% style="text-align:center; vertical-align:middle" %) | 221 - 222 -|(% colspan="2" %)((( 223 -= User Guide = 224 -))) 225 -|(% style="width:26px" %) |(% style="width:1452px" %)((( 226 -Before proceeding with the guide, it is important to note the following: 227 - 228 -* 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 229 -* 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 230 - 231 -Pressing the i "Information" icon in the software will bring you to this page. 232 - 233 -[[image:ses-pro-robotic-arm-ui-info.png]] 234 -))) 235 -|(% colspan="2" %)((( 236 -== IMPORTANT == 237 -))) 238 -|(% style="width:26px" %) |(% style="width:1452px" %)((( 239 -=== Payload Considerations === 240 - 241 -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. 242 -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. 243 -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. 244 -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". 245 -))) 246 -|(% style="width:26px" %) |(% style="width:1452px" %)((( 247 -=== Emergency === 248 - 249 -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: 250 - 251 -**Halt (and hold)** 252 - 253 -**[[image:ses-pro-robotic-arm-ui-halt.png]]** 254 - 255 -This will stop every joints and hold them in their last recorded angular positions. The corresponding command is #254H<cr>. 256 - 257 -**Limp** 258 - 259 -**[[image:ses-pro-robotic-arm-ui-limp.png]]** 260 - 261 -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>. 262 - 263 -**Software E-Stop** 264 - 265 -**[[image:ses-pro-robotic-arm-ui-arm-emergency.png]]** 266 - 267 -The E-stop button within the software sets all joints to limp, this can possibly cause the arm to fall. 268 - 269 -**Power Supply E-Stop** 270 -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. 271 -))) 272 -|(% colspan="2" %)((( 273 -== Arm Connection == 274 -))) 275 -|(% style="width:26px" %) |(% style="width:1452px" %)((( 276 -**Model** 277 - 278 -**[[image:ses-pro-robotic-arm-ui-arm-version.png]]** 279 - 280 -The software currently supports the following Lynxmotion PRO Arms: 281 - 282 -* 550mm 5DoF 283 -* 550mm 6DoF 284 -* 900mm 5DoF 285 -* 900mm 6DoF 286 - 287 -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. 288 - 289 -**COM Port** 290 - 291 -**[[image:ses-pro-robotic-arm-ui-com.png]]** 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 - 295 -**Connect / Disconnect** 296 - 297 -[[image:ses-pro-robotic-arm-ui-connect.png]] 298 - 299 -[[image:ses-pro-robotic-arm-ui-disconnect.png]] 300 - 301 -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. 302 -))) 303 -|(% colspan="2" %)((( 304 -== Gripper Controls == 305 -))) 306 -|(% style="width:26px" %) |(% style="width:1452px" %)((( 307 -**Model** 308 - 309 -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. 310 - 311 -* PGE-50-40 (40mm default configuration) 312 -* PGE-50-40 (60mm configuration) 313 -* PGE-50-40 (80mm configuration) 314 -* CGE-10-10 (20mm configuration) 315 -* CGE-10-10 (40mm configuration) 316 -* CGE-10-10 (60mm configuration) 317 - 318 -**COM Port** 319 - 320 -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 321 - 322 -**Baudrate** 323 - 324 -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 the software. 325 - 326 -**Initialize** 327 - 328 -Initializing the gripper opens it fully. This is available should the user encounter issues with positioning and need to re-zero the fingers. 329 - 330 -**Connect** 331 - 332 -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. 333 - 334 -**Speed** 335 - 336 -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. 337 - 338 -**Force** 339 - 340 -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. 341 - 342 -**Open / Close** 343 - 344 -These are shortcut buttons to either fully open or fully close the gripper. 345 - 346 -**Sequencer** 347 - 348 -The sequencer displays the gripper position as joint 7 (J7). 349 - 350 -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. 351 -))) 352 -|(% colspan="2" %)((( 353 -== 3D Model == 354 -))) 355 -|(% style="width:26px" %) |(% style="width:1452px" %)((( 356 -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. 357 - 358 -**View Controls** 359 - 360 -Zoom: Shift + Middle Scroll 361 - 362 -Rotate: Shift + Middle Mouse 363 - 364 -Pan: None 365 -))) 366 -|(% colspan="2" %)((( 367 -== Manual Move == 368 -))) 369 -|(% style="width:26px" %) |(% style="width:1452px" %)((( 370 -**Angular Control** 371 - 372 -In angular mode, the user can control the angle of each joint 373 - 374 -**Coordinates Control** 375 - 376 -In coordinate control the user can control the cartesian position of the end effector 377 - 378 -**End Effector Lock** 379 - 380 -The orientation of the end effector can be locked. 381 -))) 382 -|(% colspan="2" %)((( 383 -== Direct Command == 384 -))) 385 -|(% style="width:26px" %) |(% style="width:1452px" %)((( 386 -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. 387 - 388 -A few things to keep in mind when using this: 389 - 390 -* Make sure you know what you are doing as you can make the arm move in __dangerous__ ways. 391 -* Sending commands does not require ‘#’ and ‘\r’ chars. 392 -** example for #2\r you should enter 2Q and press the "SEND" button 393 -* The commands are validated, and it shows a notification in case of error. 394 -* The replies of queries are shown in the text field below. 395 -))) 396 -|(% colspan="2" %)((( 397 -== Command Output == 398 -))) 399 -|(% style="width:26px" %) |(% style="width:1452px" %)((( 400 -//{Coming Soon}// 401 -))) 402 -|(% colspan="2" %)((( 206 +| |(% colspan="2" rowspan="1" %)((( 403 403 == Telemetry == 404 404 ))) 405 -|(% style=" width:26px" %) |(% style="width:1452px" %)(((209 +| |(% style="text-align:center; vertical-align:middle" %) |((( 406 406 **Data to Display** 407 407 408 408 Various telemetry data can be retrieved from each actuators / joints, here is what the software support: ... ... @@ -418,116 +418,121 @@ 418 418 * MCU Temperature 419 419 * PCB Temperature 420 420 * Probe Temperature 421 - 225 +))) 226 +| |(% style="text-align:center; vertical-align:middle" %) |((( 422 422 **Display / Hide ** 423 423 424 424 At the bottom of the graphics you will find squares to activate / deactivate the desired actuator / joint to be displayed in the graph. 425 425 ))) 426 -|(% colspan="2" s tyle="width:26px" %)(((231 +| |(% colspan="2" rowspan="1" %)((( 427 427 == Sequencer == 428 428 ))) 429 -|(% style="width:26px" %) |(% style="width:1452px" %)((( 430 -**Sequence** 234 +| |(% colspan="2" rowspan="1" %)**Sequence** 235 +| |(% style="text-align:center; vertical-align:middle" %) |((( 236 +**Sequence Selector** 431 431 432 -Add 238 + 239 +))) 240 +| |(% style="text-align:center; vertical-align:middle" %) |((( 241 +**Add** 433 433 434 -Substract 243 + 244 +))) 245 +| |(% style="text-align:center; vertical-align:middle" %) |((( 246 +**Substract** 435 435 436 -Copy 248 + 249 +))) 250 +| |(% style="text-align:center; vertical-align:middle" %) |((( 251 +**Copy** 437 437 438 -Save 253 + 254 +))) 255 +| |(% style="text-align:center; vertical-align:middle" %) |((( 256 +**Save** 439 439 440 -Open 258 + 259 +))) 260 +| |(% style="text-align:center; vertical-align:middle" %) |((( 261 +**Open** 441 441 442 -Delete 263 + 264 +))) 265 +| |(% style="text-align:center; vertical-align:middle" %) |((( 266 +**Delete** 443 443 444 -//{Coming Soon}// 268 + 269 +))) 270 +| |(% colspan="2" rowspan="1" %)**Frames** 271 +| |(% style="text-align:center; vertical-align:middle" %) |((( 272 +**Add** 445 445 446 -**Frames** 274 + 275 +))) 276 +| |(% style="text-align:center; vertical-align:middle" %) |((( 277 +**Sequence Selector** 447 447 448 -Add 279 + 280 +))) 281 +| |(% style="text-align:center; vertical-align:middle" %) |((( 282 +**Record** 449 449 450 -Sequence Selector 284 + 285 +))) 286 +| |(% style="text-align:center; vertical-align:middle" %) |((( 287 +**Delete** 451 451 452 -Record 289 + 290 +))) 291 +| |(% style="text-align:center; vertical-align:middle" %) |((( 292 +**Copy** 453 453 454 -Delete 294 + 295 +))) 296 +| |(% style="text-align:center; vertical-align:middle" %) |((( 297 +**Paste** 455 455 456 -Copy 299 + 300 +))) 301 +| |(% style="text-align:center; vertical-align:middle" %) |((( 302 +**Swap** 457 457 458 -Paste 304 + 305 +))) 306 +| |(% style="text-align:center; vertical-align:middle" %) |((( 307 +**Frame Name** 459 459 460 -Swap 309 + 310 +))) 311 +| |(% style="text-align:center; vertical-align:middle" %) |((( 312 +**Frame length** 461 461 462 -Manual Edit 463 - 464 -Time, angles, gripper 465 - 466 -Moving Frames 467 - 468 468 //Alt + Left Click = Drag time// 315 +))) 316 +| |(% style="text-align:center; vertical-align:middle" %) |((( 317 +**Frame Move** 469 469 470 -//{Coming Soon}// 319 + 320 +))) 321 +| |(% style="text-align:center; vertical-align:middle" %) |((( 322 +**Loop** 471 471 472 -**Errors** 324 + 325 +))) 326 +| |(% style="text-align:center; vertical-align:middle" %) |((( 327 +**Manual Edit** 473 473 474 - //{ComingSoon}//329 +Time, angles, gripper 475 475 ))) 476 -|(% style="width:26px" %) |(% style="width:1452px" %) 477 -|(% style="width:26px" %) |(% style="width:1452px" %) 478 -|(% style="width:26px" %) |(% style="width:1452px" %) 479 -|(% style="width:26px" %) |(% style="width:1452px" %) 480 -|(% style="width:26px" %) |(% style="width:1452px" %) 481 -|(% style="width:26px" %) |(% style="width:1452px" %) 482 -|(% style="width:26px" %) |(% style="width:1452px" %) 483 -|(% style="width:26px" %) |(% style="width:1452px" %) 484 -|(% style="width:26px" %) |(% style="width:1452px" %) 485 -|(% style="width:26px" %) |(% style="width:1452px" %) 486 -|(% style="width:26px" %) |(% style="width:1452px" %) 487 -|(% style="width:26px" %) |(% style="width:1452px" %) 488 -|(% style="width:26px" %) |(% style="width:1452px" %) 489 -|(% style="width:26px" %) |(% style="width:1452px" %) 490 -|(% style="width:26px" %) |(% style="width:1452px" %) 491 -|(% style="width:26px" %) |(% style="width:1452px" %) 492 -|(% style="width:26px" %) |(% style="width:1452px" %) 493 -|(% style="width:26px" %) |(% style="width:1452px" %) 494 -|(% style="width:26px" %) |(% style="width:1452px" %) 495 -|(% style="width:26px" %) |(% style="width:1452px" %) 496 -|(% style="width:26px" %) |(% style="width:1452px" %) 497 -|(% style="width:26px" %) |(% style="width:1452px" %) 498 -|(% style="width:26px" %) |(% style="width:1452px" %) 499 -|(% style="width:26px" %) |(% style="width:1452px" %) 500 -|(% style="width:26px" %) |(% style="width:1452px" %) 501 -|(% style="width:26px" %) |(% style="width:1452px" %) 502 -|(% style="width:26px" %) |(% style="width:1452px" %) 503 -|(% style="width:26px" %) |(% style="width:1452px" %) 504 -|(% style="width:26px" %) |(% style="width:1452px" %) 505 -|(% style="width:26px" %) |(% style="width:1452px" %) 506 -|(% style="width:26px" %) |(% style="width:1452px" %) 507 -|(% style="width:26px" %) |(% style="width:1452px" %) 508 -|(% style="width:26px" %) |(% style="width:1452px" %) 509 -|(% style="width:26px" %) |(% style="width:1452px" %) 510 -|(% style="width:26px" %) |(% style="width:1452px" %) 511 -|(% style="width:26px" %) |(% style="width:1452px" %) 512 -|(% style="width:26px" %) |(% style="width:1452px" %) 513 -|(% style="width:26px" %) |(% style="width:1452px" %) 514 -|(% style="width:26px" %) |(% style="width:1452px" %) 515 -|(% style="width:26px" %) |(% style="width:1452px" %) 516 -|(% style="width:26px" %) |(% style="width:1452px" %) 517 -|(% style="width:26px" %) |(% style="width:1452px" %) 518 -|(% style="width:26px" %) |(% style="width:1452px" %) 519 -|(% style="width:26px" %) |(% style="width:1452px" %) 520 -|(% style="width:26px" %) |(% style="width:1452px" %) 521 -|(% style="width:26px" %) |(% style="width:1452px" %) 522 -|(% style="width:26px" %) |(% style="width:1452px" %) 523 -|(% style="width:26px" %) |(% style="width:1452px" %) 524 -|(% style="width:26px" %) |(% style="width:1452px" %) 525 -|(% style="width:26px" %) |(% style="width:1452px" %) 526 -|(% style="width:26px" %) |(% style="width:1452px" %) 527 -|(% style="width:26px" %) |(% style="width:1452px" %) 528 -|(% style="width:26px" %) |(% style="width:1452px" %) 529 -|(% style="width:26px" %) |(% style="width:1452px" %) 331 +| |(% style="text-align:center; vertical-align:middle" %) |((( 332 +**Zoom** 530 530 334 + 335 +))) 336 +| |(% colspan="2" rowspan="1" %)**Errors** 337 +| |(% style="text-align:center; vertical-align:middle" %) | 338 +| |(% style="text-align:center; vertical-align:middle" %) | 339 + 531 531 {{comment}} 532 532 = = 533 533