Wiki source code of LSS FlowArm

Version 56.1 by Coleman Benson on 2019/09/18 12:23

Hide last authors
Eric Nantel 14.1 1 [[image:LSS-FlowArm.png||width="350"]]
2
Coleman Benson 34.1 3 [[image:wiki-download.png]]
Coleman Benson 30.1 4
Coleman Benson 16.1 5 **Page Contents**
6
Eric Nantel 14.1 7 {{toc/}}
8
Eric Nantel 15.1 9 = Description =
Eric Nantel 14.1 10
Coleman Benson 47.1 11 The LSS FlowArm application is intended to allow easy control of the standard Lynxmotion Servo Erector Set (S.E.S.) v2 articulated robotic arm. The graphical interface shows multiple views of the arm which can be controlled via drag and drop, as well as by manually inputting coordinates. The full-featured built-in sequencer allows you create sequences which have the arm move automatically from one position ("frame") to the next. Make use of the "teach mode" to position the arm where you want and record frames which can be modified and played back. Associating each pattern with input keys means you can easily play back and test multiple sequences.
Coleman Benson 16.1 12
Coleman Benson 48.1 13 FlowBotics Studio was used to create this app and includes hundreds of built-in components that allow you to interface your PC to many standard computer peripherals and robotics components, and you can quickly design new components for new hardware. Easily create new projects with custom GUI screens, knobs, buttons, switches, etc. that will run live from within FlowBotics Studio without needing to wait for compilation, or export as stand-alone executable files. FlowBotics Studio includes a powerful graphics engine that allows you to make custom graphical objects by using standard bitmaps or by drawing your own shapes on the screen. Using this system, you can build entirely custom interfaces like this one for your projects and integrate photographs, drawings, and graphs.
Coleman Benson 30.1 14
Eric Nantel 15.1 15 = Features =
Coleman Benson 4.2 16
Coleman Benson 30.1 17 * Graphical interface for the Lynxmotion SES V2 articulated robot arm
18 * Full featured sequencer allows recording and playback of many sequences via keyboard input
19 * Teach mode allows the user to move the arm and have the virtual arm follow
20 * Position the arm using rectangular or cylindrical coordinates, virtual joysticks or mouse drag
21 * Application can be modified via FlowBotics Studio
Coleman Benson 48.1 22 * Optional data log shows what commands are sent and received and can be saved as a .csv file.
Coleman Benson 45.1 23 * LSS FlowArm is intended only for Windows operating systems 7 or higher.
Coleman Benson 16.1 24
Eric Nantel 15.1 25 = Initial Setup =
Coleman Benson 9.1 26
Coleman Benson 30.1 27 In order to understand the features, functionality and nuances of the Lynxmotion smart servos, it is suggested to read through the [[doc:lynxmotion-smart-servo.WebHome]] section of the wiki.
28
29 Before assembling the arm, each of the IDs assigned to the servos must correspond with what is needed in the software.
Coleman Benson 3.1 30
Coleman Benson 4.1 31 * Base: 1
32 * Shoulder: 2
33 * Elbow: 3
34 * Wrist: 4
35 * Gripper: 5
Coleman Benson 3.1 36
Coleman Benson 34.1 37 To do so, the [[LSS Configuration Software>>doc:lynxmotion-smart-servo.lss-configuration-software.WebHome]] is used. Follow the procedure outlined here: [[doc:lynxmotion-smart-servo.lss-configuration-software.lss-config-configure-ids.WebHome]]
Coleman Benson 30.1 38
Coleman Benson 34.1 39 * Servo ID is correctly assigned to each servo and there are no duplicate IDs
40 * Servos have been assembled in correct orientation (as per assembly manual)
41 * Servo offsets have been updated if necessary (see procedure below).
42
Coleman Benson 53.2 43 The next important step is "STORE OFFSETS" explained below.
44
Eric Nantel 15.1 45 = Interface =
Coleman Benson 3.1 46
Eric Nantel 15.1 47 == Header ==
48
Coleman Benson 30.1 49 [[image:lss-flowarm-header.jpg]]
Coleman Benson 3.1 50
Coleman Benson 30.1 51 **STORE OFFSETS**
Coleman Benson 3.1 52
Coleman Benson 53.1 53 The "STORE OFFSETS" button configures all of the servo offsets (this makes use of the CO command as part of the [[LSS Communication Protocol>>doc:lynxmotion-smart-servo.lss-communication-protocol.WebHome]]). Before pressing the button, orient the arm as shown below (with the gripper closed), and only then click the STORE OFFSETS button.
Coleman Benson 3.1 54
Coleman Benson 53.1 55 * Base servo aligned with the x axis
56 * Shoulder to elbow along z axis (straight up)
57 * Elbow to wrist along R axis (horizontal at 90 degrees to shoulder to elbow)
58 * Wrist servo along R axis (parallel to elbow to wrist)
59 * Gripper servo closed
60
Coleman Benson 34.1 61 [[image:lss-flowarm-offsets.jpg]]
62
Coleman Benson 30.1 63 **LIMP**
Coleman Benson 3.1 64
Coleman Benson 48.1 65 Causes all servos to immediately go LIMP (i.e. lose torque). The arm will collapse. It's important to note that the software will not constantly query all servos for their position, and as such the virtual arm on screen will not update frequently if at all. If you want the virtual arm on screen to update as you move the real arm, use TEACH mode described below.
Coleman Benson 3.1 66
Coleman Benson 30.1 67 **STOP**
68
Coleman Benson 48.1 69 Causes all servos to immediately stop their motion and hold their position.
Coleman Benson 30.1 70
71 **TEACH**
72
Coleman Benson 48.1 73 Teach mode allows a user to physically move the arm and have the virtual arm on screen follow. This is used primarily to manually add frames to sequences, determine the optimal closed position for the gripper etc. In order to ensure the arm does not collapse, pressing the TEACH button will start a 5 second countdown during which the arm will slowly lose torque (angular force) until all servos are limp. When in teach mode, an orange outline appears over all on-screen fields which would cause a conflict and therefore cannot be used.
Coleman Benson 30.1 74
Coleman Benson 48.1 75 CAREFUL: Do not move the servos or the arm too quickly. We suggest holding the gripper servo to move the arm, or temporarily removing the arm's aesthetic shell.
Coleman Benson 30.1 76
Coleman Benson 48.1 77 Once the arm is limp, it can be moved physically, and the application will regularly send position query commands to all of the servos and update the virtual arm on screen to match the servo's responses. Use the sequencer to record each position (frame) while in teach mode. For more information on the sequencer, refer to the sequencer section below.
Coleman Benson 30.1 78
79 **GRID / Units**
80
Coleman Benson 48.1 81 Grid spacing can be toggled between Metric or Imperial. Options include 2cm, 3cm, 5cm and 1in, 2in and 3in.
Coleman Benson 3.1 82
Coleman Benson 30.1 83 **BAUD**
Coleman Benson 3.1 84
Coleman Benson 48.1 85 The default (and suggested) baud rate is 115200, which is the baud rate at which the servos are shipped. Should a user have changed the baud rate on the servos, it can be selected using the drop down. Note that the baud rate must be configured to the same value for all servos in order to work.
Coleman Benson 3.1 86
87 **COM**
88
Coleman Benson 49.1 89 When the software is opened, a scan of all of your computer's COM ports is done automatically and a list of all available COM ports will be found in the drop down menu, along with OFF (stop searching for a COM port), and AUTO (the application tries to automatically find the correct COM port by sending a query command at the corresponding BAUD rate). Select which of your computer's COM ports is connected to the [[LSS Adapter>>doc:servo-erector-set-system.ses-electronics.ses-modules.lss-adapter-board.WebHome]] (which is provided with the standard SES v2 articulated robot arm). If you have a list of available COM ports and are unsure which is associated with the LSS Adapter, go to Device Manager in Windows, and view the list of USB devices connected. The LSS Adapter uses an FTDI USB to serial chip. Alternatively, simply unplug the USB from the arm and see which of the COM ports disappears from the list.
Coleman Benson 3.1 90
Coleman Benson 49.1 91 * If the red and green lights next to the field are flashing, the correct COM port has not yet been found, and the user may need to manually select the correct COM port.
92 * If the red light is solid, then no correct COM port has been located.
93 * If the green light is solid, the a COM port has been located.
Coleman Benson 30.1 94
Coleman Benson 3.1 95 **Window Size**
96
Coleman Benson 30.1 97 **[[image:lss-flowarm-size.jpg]]**
Coleman Benson 3.1 98
Coleman Benson 49.1 99 A the top right of the window, there are three dark rectangles allowing you to change the application's window size.
Coleman Benson 30.1 100
Coleman Benson 49.1 101 == Virtual Arm ==
Coleman Benson 3.1 102
Coleman Benson 49.1 103 (% class="wikigeneratedid" id="HArmConfiguration" %)
Coleman Benson 50.1 104 The arm shown on screen is based on the assembly guide. The aesthetics of the arms will be changing for the next release version of the LSS Flowarm software.
Coleman Benson 3.1 105
Coleman Benson 49.1 106 **Side View**
Coleman Benson 3.1 107
Coleman Benson 49.1 108 The left view is a representation of the arm, where the orange circles represent the location of each axis of rotation. You can move the arm in this view by clicking on and dragging the wrist rotation servo.
Coleman Benson 3.1 109
Coleman Benson 30.1 110 [[image:lss-flowarm-side-view.jpg]]
111
Coleman Benson 3.1 112 **Top View**
113
Coleman Benson 49.1 114 The top view shows the arm top down. You can move the arm within this view by clicking on and dragging the wrist rotation servo.
115
Coleman Benson 30.1 116 **[[image:lss-flowarm-top-view.jpg]]**
117
Eric Nantel 15.1 118 == Left Menu ==
Coleman Benson 3.1 119
Coleman Benson 30.1 120 **Gripper**
Coleman Benson 3.1 121
Coleman Benson 49.1 122 Assuming the gripper has been properly calibrated, The number below represents the opening at the tip. Fully closed should correspond to 0 degrees. In order to grasp an object, DO NOT have the servo rotate to a position which it cannot reach. In order to ensure the gripper servo does not go into error mode, the gripper should not exert much force on the object.
Coleman Benson 45.1 123
Coleman Benson 46.1 124 1. Close the gripper to a position just slightly larger than the object
125 1. Using the arrows, close the gripper until friction between the foam and the object prevent the object from falling out or moving.
Coleman Benson 49.1 126 1. DO NOT apply too much pressure, or else the servo's current will spike and it will go into error mode and need to be reset.
127 1. Use the last position as the "fully closed" position for the gripper for that object, in that specific orientation.
Coleman Benson 46.1 128
Coleman Benson 30.1 129 [[image:lss-flowarm-gripper-view.jpg]]
130
131 **Wrist**
132
Coleman Benson 45.1 133 The wrist angle can be locked or unlocked. The field allows for user input (click the numbers) or fine adjustments using the arrows.
134
Coleman Benson 30.1 135 [[image:lss-flowarm-wrist-view.jpg]]
136
Coleman Benson 3.1 137 **End Effector Position**
138
Coleman Benson 49.1 139 The position of the end effector can be controlled either by manually entering the information for R (radius), or the Cartesian x, y, z coordinates, or using the arrows.
140
Coleman Benson 30.1 141 [[image:lss-flowarm-positioning.jpg]]
142
Coleman Benson 49.1 143 == **Data Log** ==
Coleman Benson 3.1 144
Coleman Benson 49.1 145 The optional Data log can be toggled on or off and allows the user to see all commands being sent to and received from the smart servos. The data can be saved to a file in a Comma Separated Values (.csv) format.
Coleman Benson 3.1 146
Coleman Benson 30.1 147 [[image:lss-flowarm-data-log.jpg]]
Coleman Benson 3.1 148
Eric Nantel 15.1 149 == Sequencer ==
Coleman Benson 3.1 150
Coleman Benson 30.1 151 [[image:lss-flowarm-sequencer.jpg]]
Coleman Benson 3.1 152
Coleman Benson 49.1 153 LSS FlowArm has a powerful pattern sequencer component (normally found only in the full version of FlowBotics Studio) that is used to create reusable patterns within minutes, instead of hours or days. From left to right:
Coleman Benson 30.1 154
Coleman Benson 45.1 155 (% style="width:1303px" %)
156 |(% style="width:257px" %)[[image:lss-flowarm-association.jpg]]|(% style="width:306px" %)Keyboard Association|(% style="width:758px" %)Patterns can be associated to keyboard keys F1 to F12, and keys E, F, G, and H
157 |(% style="width:257px" %)[[image:lss-flowarm-pattern-list.jpg]]|(% style="width:306px" %)Active Pattern Name|(% style="width:758px" %)Click on the text to change the pattern name. Use the arrows to navigate between patterns
158 |(% style="width:257px" %)[[image:lss-flowarm-patterns.jpg]]|(% style="width:306px" %)Pattern Options|(% style="width:758px" %)Add, remove, copy, save, open and delete patterns.
159 |(% style="width:257px" %)[[image:lss-flowarm-frames.jpg]]|(% style="width:306px" %)Frame Options|(% style="width:758px" %)Adding a frame adds a blank frame to the list. The drop-down list gives "useful" pre-made frames. Recording a frame copies the arm's current on-screen position. The X removes a selected frame.
160 |(% style="width:257px" %)[[image:lss-flowarm-copy-paste.jpg]]|(% style="width:306px" %)Copy / Paste Frame|(% style="width:758px" %)Copy and paste a frame
161 |(% style="width:257px" %)[[image:lss-flowarm-settings.jpg]]|(% style="width:306px" %)Settings|(% style="width:758px" %)Useful features include: Toggle pause before frame; Remove gaps between frames; Reverse frames
162 |(% style="width:257px" %)[[image:lss-flowarm-lock.jpg]]|(% style="width:306px" %)Lock |(% style="width:758px" %)
163 |(% style="width:257px" %)[[image:lss-flowarm-loop.jpg]]|(% style="width:306px" %)Repeat / Loop Pattern|(% style="width:758px" %)Play once or loop; Set the playback speed using the up and down arrows.
164 |(% style="width:257px" %)[[image:lss-flowarm-play.jpg]]|(% style="width:306px" %)Playback Options|(% style="width:758px" %)Restart sequence, play or stop
Coleman Benson 30.1 165
166 [[image:lss-flowarm-keyboard-liveupdate.jpg]]
167
Coleman Benson 51.1 168 Just above the sequencer, you can find the following:
Eric Nantel 15.1 169
Coleman Benson 49.1 170 Keyboard: {More to come}
Eric Nantel 15.1 171
Coleman Benson 49.1 172 Live Update:{More to come}
Eric Nantel 15.1 173
Coleman Benson 49.1 174 = Troubleshooting =
Eric Nantel 15.1 175
Coleman Benson 49.1 176 If you encounter any bugs or issues when installing or using the LSS FlowArm application, please submit a new post on the Lynxmotion community sub-forum here: [[https:~~/~~/www.robotshop.com/community/forum/c/lynxmotion/electronics-software>>url:https://www.robotshop.com/community/forum/c/lynxmotion/electronics-software]]
177
Eric Nantel 15.1 178 {Work in progress}

Recently Visited

Copyright RobotShop 2018