Changes for page FlowArm LSS

Last modified by Eric Nantel on 2024/07/03 09:39

From version < 163.1 >
edited by Eric Nantel
on 2020/09/10 09:22
To version < 187.1
edited by Eric Nantel
on 2024/07/03 09:39
<
Change comment: Renamed back-links.

Summary

Details

Page properties
Title
... ... @@ -1,1 +1,1 @@
1 -LSS FlowArm
1 +FlowArm LSS
Parent
... ... @@ -1,1 +1,1 @@
1 -servo-erector-set-system.ses-software.WebHome
1 +ses-software.WebHome
Content
... ... @@ -1,6 +1,6 @@
1 1  {{lightbox image="LSS-FlowArm.png" width="400"/}}
2 2  
3 -[[[[image:[email protected]]]>>https://www.robotshop.com/en/lss-flowarm-app-download.html||rel="noopener noreferrer" target="_blank"]]
3 +[[[[image:[email protected]]]>>attach:lss_flowarm.zip]]
4 4  
5 5  **Page Contents**
6 6  
... ... @@ -8,68 +8,57 @@
8 8  
9 9  = Description =
10 10  
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.
11 +The LSS FlowArm application is intended to allow easy control of the standard Lynxmotion Servo Erector Set (SES) V2 robotic arms. Either the four degree of freedom (4DoF) or three degree of freedom (3DoF) arm is selected and 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 moves the arm 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.
12 12  
13 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.
14 14  
15 15  = Features =
16 16  
17 -* Graphical interface for the Lynxmotion SES V2 articulated robot arm
17 +* Graphical interface for the Lynxmotion SES V2 3DoF and 4DoF robot arms
18 18  * Full featured sequencer allows recording and playback of many sequences via keyboard input
19 19  * Teach mode allows the user to move the arm and have the virtual arm follow
20 20  * Position the arm using rectangular or cylindrical coordinates, virtual joysticks or mouse drag
21 21  * Application can be modified via FlowBotics Studio
22 22  * Optional data log shows what commands are sent and received and can be saved as a .csv file.
23 -* LSS FlowArm is intended only for Windows operating systems 7 or higher.
23 +* LSS FlowArm is intended only for the Windows 7 operating system or higher.
24 24  
25 25  = Initial Setup =
26 26  
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.
27 +In order to understand the features, functionality and nuances of the Lynxmotion smart servos, it is suggested to read through the [[doc:ses-v2.lynxmotion-smart-servo.WebHome]] section of the wiki. Before assembling the arm, each of the IDs assigned to the servos must correspond with what is needed in the software.
28 28  
29 -Before assembling the arm, each of the IDs assigned to the servos must correspond with what is needed in the software.
30 -
31 31  (% style="width:700px" %)
32 -|(% style="text-align:center" %)**LSS - 4 DoF Arm **|(% style="text-align:center" %)**LSS - 3 DoF Arm **
33 -|{{lightbox image="https://www.robotshop.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v2-robots/ses-v2-arms/lss-4dof-arm/4dof-arm-quickstart/4dof-servo-setup/WebHome/SESV2-LSS-ARTICULATED-ARM-IDS.PNG" width="350"/}}|{{lightbox image="https://www.robotshop.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v2-robots/ses-v2-arms/lss-3-dof-arm/3dof-arm-quickstart/3dof-servo-setup/WebHome/LSS-3DOF-IDS.PNG?=" width="350"/}}
30 +|(% style="text-align:center" %)**LSS - 3 DoF Arm **|(% style="text-align:center" %)**LSS - 4 DoF Arm**|(% style="text-align:center" %)**LSS - 5DoF Arm**
31 +|{{lightbox image="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/ses-v2-arms/lss-3-dof-arm/3dof-arm-quickstart/3dof-servo-setup/WebHome/LSS-3DOF-IDS.PNG"/}}|(% style="text-align:center" %){{lightbox image="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/ses-v2-arms/lss-4dof-arm/4dof-arm-quickstart/4dof-servo-setup/WebHome/SESV2-LSS-ARTICULATED-ARM-IDS.PNG"/}}|(% style="text-align:center" %){{lightbox image="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/ses-v2-arms/lss-5dof-arm/5dof-arm-quickstart/5dof-servo-setup/WebHome/SESV2-5DOF-ARM-IDS.PNG"/}}
32 +|Gripper servo ID already assigned via LSS-2IO| |
34 34  
35 -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]]
34 +To do so, the [[LSS Configuration Software>>doc:ses-v2.lynxmotion-smart-servo.lss-configuration-software.WebHome]] is used. Follow the procedure outlined here: [[doc:ses-v2.lynxmotion-smart-servo.lss-configuration-software.lss-config-configure-ids.WebHome]]
36 36  
37 37  * Servo ID is correctly assigned to each servo and there are no duplicate IDs
38 38  * Servos have been assembled in correct orientation (as per assembly manual)
39 39  * Servo offsets have been updated if necessary (see procedure below).
40 40  
41 -== Connecting via USB ==
40 +(% class="wikigeneratedid" %)
41 +Complete the Setup:
42 42  
43 -The simplest way to connect is directly using the [[LSS-Adapter>>doc:servo-erector-set-system.ses-electronics.ses-modules.lss-adapter-board.WebHome]] (or any RS232 to USB interface). Here are the steps you need to follow in order to set this up. Follow the steps below:
43 +* [[doc:.lss-flowarm-setup.WebHome]]
44 44  
45 -1. Connect the USB cable to the LSS Adapter board on your robot
46 -1. Plug the USB connector into the PC
47 -1. Connect your LSS to the LSS-Adapter with the Lynxmotion cable
48 -1. Connect the power to the LSS Adapter via the yellow XT60 plug
49 -1. Power on the robot (On/Off switch)
50 -1. Start the LSS FlowArm software
51 -1. Select the appropriate COM port from the drop-down list & the baudrate (115200)
52 -1. The software sends a query to servo ID1 and once a reply is received, it determines connection has been established.
53 -
54 -== Connecting via Bluetooth ==
55 -
56 -If you have purchased a Bluetooth module which is in XBee format, ensure to have the right baudrate on your bluetooth adapter, the default is 115 200 for the LSS.
57 -
58 58  = Interface =
59 59  
60 -Following are informations regarding the user interface of LSS FlowArm.
47 +[[image:lss-flowarm-size.jpg]]
61 61  
49 +A the top right of the window, there are three dark rectangles allowing you to change the application's window size.
50 +
62 62  == Header ==
63 63  
64 64  [[image:lss-flowarm-header.png||alt="lss-flowarm-header"]]
65 65  
66 -=== Emergency stop ===
55 +=== ARM TYPE ===
67 67  
68 -At any given time you can click this button to stop the arm. This will send a "LIMP" command directly to all servos.
57 +This drop-down allows you to select either the 3DoF or 4DoF robotic arm. The 3DoF is selected by default.
69 69  
70 -=== Store offsets (calibration) ===
59 +=== STORE OFFSETS ===
71 71  
72 -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. This setup only need to be done once when first setting up the arm.
61 +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:ses-v2.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. This setup only need to be done once when first setting up the arm.
73 73  
74 74  * Base servo aligned with the x axis
75 75  * Shoulder to elbow along z axis (straight up)
... ... @@ -77,31 +77,35 @@
77 77  * Wrist servo along R axis (parallel to elbow to wrist)
78 78  * Gripper servo closed
79 79  
80 -|(% colspan="2" rowspan="1" style="text-align:center; vertical-align:middle" %)**LSS - 4 DoF Arm **|(% colspan="2" rowspan="1" style="text-align:center; vertical-align:middle" %)**LSS - 3 DoF Arm **
81 -|(% style="text-align:center; vertical-align:middle" %)[[image:lss-flowarm-offset-left.png||alt="lss-flowarm-left.png" width="200"]]|(% style="text-align:center; vertical-align:middle" %)[[image:lss-flowarm-offset-top.png||alt="lss-flowarm-top.png" width="200"]]|(% style="text-align:center; vertical-align:middle" %)[[image:lss-flowarm-offset-left-3dof.png||alt="lss-flowarm-left-3dof.png" width="200"]]|(% style="text-align:center; vertical-align:middle" %)[[image:lss-flowarm-top-3dof.png||alt="lss-flowarm-left-3dof.png" width="200"]]
69 +|(% colspan="2" rowspan="1" style="text-align:center; vertical-align:middle" %)**4 DoF**|(% colspan="2" rowspan="1" style="text-align:center; vertical-align:middle" %)**3 DoF **
70 +|(% style="text-align:center; vertical-align:middle" %)[[image:lss-flowarm-offset-left.png||queryString="width=200" alt="lss-flowarm-left.png" width="200"]]|(% style="text-align:center; vertical-align:middle" %)[[image:lss-flowarm-offset-top.png||queryString="width=200" alt="lss-flowarm-top.png" width="200"]]|(% style="text-align:center; vertical-align:middle" %)[[image:lss-flowarm-offset-left-3dof.png||queryString="width=200" alt="lss-flowarm-left-3dof.png" width="200"]]|(% style="text-align:center; vertical-align:middle" %)[[image:lss-flowarm-top-3dof.png||queryString="width=200" alt="lss-flowarm-left-3dof.png" width="200"]]
82 82  
83 -=== Limp ===
72 +=== LIMP ===
84 84  
85 -Causes all servos to slowly go LIMP (i.e. lose torque), gradually loosing torque until hitting the ground. 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.
74 +Causes all servos to slowly go LIMP (i.e. lose torque), gradually loosing torque until hitting the ground. 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.
86 86  
87 -=== Halt & hold ===
76 +=== HALT & HOLD ===
88 88  
89 89  Causes all servos to immediately stop their motion and hold their position.
90 90  
91 -=== Teach ===
80 +=== TEACH ===
92 92  
93 93  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.
94 94  
95 -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.
84 +CAREFUL: Do not move the servos or the arm too quickly. We suggest holding the gripper servo to move the arm. In the case of the 4DoF arm, temporarily removthe arm's aesthetic plastic shell.
96 96  
97 97  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.
98 98  
99 -=== Grid / units ===
88 +=== EMERGENCY STOP ===
100 100  
101 -Grid spacing can be toggled between Metric or Imperial. Options include 2cm, 3cm, 5cm and 1in, 2in and 3in.
90 +At any given time you can click this button to stop the arm. This will send a "LIMP" command directly to all servos.
102 102  
103 -=== Baud ===
92 +=== GRID ===
104 104  
94 +Grid spacing can be toggled between Metric (centimeters) or Imperial (inches). Options include 2cm, 3cm, 5cm and 1in, 2in and 3in.
95 +
96 +=== BAUD ===
97 +
105 105  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.
106 106  
107 107  === COM ===
... ... @@ -112,30 +112,21 @@
112 112  * If the red light is solid, then no correct COM port has been located.
113 113  * If the green light is solid, the a COM port has been located.
114 114  
115 -=== Window size ===
108 += Views =
116 116  
117 -[[image:lss-flowarm-size.jpg]]
118 -
119 -A the top right of the window, there are three dark rectangles allowing you to change the application's window size.
120 -
121 -== Simulator ==
122 -
123 -(% class="wikigeneratedid" id="HArmConfiguration" %)
124 -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.
125 -
126 126  === Side view ===
127 127  
128 128  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 anywhere in that side view screen.
129 129  
130 -Keyboard shortcuts: (W, A, S, D)
114 +Keyboard shortcuts in the side view include (W, A, S, D):
131 131  
132 -W, S: Up & down
116 +**W**, **S**: Up & down
133 133  
134 -A, D: Left & right (closer / farther from base)
118 +**A**, **D**: Left & right (closer / farther from base)
135 135  
136 136  (% style="width:700px" %)
137 -|(% style="text-align:center" %)**LSS - 4 DoF Arm **|(% style="text-align:center" %)**LSS - 3 DoF Arm **
138 -|(% style="text-align:center" %)[[image:lss-flowarm-left.png||width="300"]]|(% style="text-align:center" %)[[image:lss-flowarm-left-3dof.png||alt="lss-flowarm-left.png" width="300"]]
121 +|(% style="text-align:center" %)**4 DoF**|(% style="text-align:center" %)**3 DoF**
122 +|(% style="text-align:center" %)[[image:lss-flowarm-left.png||queryString="width=300" width="300"]]|(% style="text-align:center" %)[[image:lss-flowarm-left-3dof.png||queryString="width=300" alt="lss-flowarm-left.png" width="300"]]
139 139  
140 140  === Top view ===
141 141  
... ... @@ -149,13 +149,13 @@
149 149  
150 150  (% style="width:700px" %)
151 151  |(% style="text-align:center" %)**LSS - 4 DoF Arm **|(% style="text-align:center" %)**LSS - 3 DoF Arm **
152 -|(% style="text-align:center" %)[[image:lss-flowarm-top.png||width="300"]]|(% style="text-align:center" %)[[image:lss-flowarm-top-3dof.png||alt="lss-flowarm-top.png" width="300"]]
136 +|(% style="text-align:center" %)[[image:lss-flowarm-top.png||queryString="width=300" width="300"]]|(% style="text-align:center" %)[[image:lss-flowarm-top-3dof.png||queryString="width=300" alt="lss-flowarm-top.png" width="300"]]
153 153  
154 154  == Shortcuts ==
155 155  
156 156  **Base**: If you hold the SHIFT key while dragging with the mouse you can control base rotation.
157 157  
158 -**Wrist Tilt**: You can tilt the hand by right-clicking and fragging the mouse up and down.
142 +**Wrist Tilt**: You can tilt the hand by right-clicking and dragging the mouse up and down.
159 159  
160 160  **Gripper:** By holding the CTRL key whilst right-clicking and dragging you can open and close the gripper
161 161  
... ... @@ -171,26 +171,23 @@
171 171  
172 172  === Gripper ===
173 173  
174 -Assuming the gripper has been properly calibrated, The number below represents the opening at the tip. Fully closed should correspond to 0 degrees. We added a feature where the servo stop when it feel a current raising, this allows the user to ask for a full close and have a good grip on the item picked.
158 +Assuming the gripper has been properly calibrated, The number below represents the opening at the tip. Fully closed should correspond to 0 degrees. Because the 4DoF uses a smart servo, it includes the 'CH' modifier command which causes the servo to stop when it detects a specific current. This allows the user to send a "close" command and the servo will automatically stop when a specific force is applied to the object. The 3DoF uses an RC servo which does not have this feature, so be sure to set the appropriate position when grasping an object.
175 175  
176 176  (% style="width:700px" %)
177 -|(% style="text-align:center" %)**LSS - 4 DoF Arm **|(% style="text-align:center" %)**LSS - 3 DoF Arm **
161 +|(% style="text-align:center" %)**4 DoF**|(% style="text-align:center" %)**3 DoF **
178 178  |(% style="text-align:center" %)[[image:lss-flowarm-gripper-view.png||alt="lss-flowarm-gripper-view.jpg"]]|(% style="text-align:center" %)[[image:lss-flowarm-gripper-view-3dof.png||alt="lss-flowarm-gripper-view.jpg"]]
179 179  
180 180  === Wrist ===
181 181  
182 -The wrist angle can be locked or unlocked. The field allows for user input (click the numbers) or fine adjustments using the arrows.
166 +The wrist angle can be locked or unlocked. The input field on the 4 DoF allows for decimal input (click the numbers) or fine adjustments using the arrows. The 3DoF does not have wrist articulation, but since the bracket can be installed horizontally or vertically, clicking this will change the orientation of the gripper.
183 183  
184 -(% style="width:700px" %)
185 -|(% style="text-align:center" %)**LSS - 4 DoF Arm **|(% style="text-align:center" %)**LSS - 3 DoF Arm **
186 -|(% style="text-align:center" %)[[image:lss-flowarm-wrist-view.png||alt="lss-flowarm-wrist-view.jpg"]]|(% style="text-align:center" %)[[image:lss-flowarm-wrist-view-3dof.png||alt="lss-flowarm-wrist-view.jpg"]]
168 +|(% colspan="2" rowspan="1" style="text-align:center; vertical-align:middle" %)**4 DoF**|(% colspan="2" rowspan="1" style="text-align:center; vertical-align:middle" %)**3 DoF**
169 +|(% style="text-align:center; vertical-align:middle" %)[[image:lss-flowarm-wrist-view.png||alt="lss-flowarm-wrist-view.jpg"]]|(% style="text-align:center; vertical-align:middle" %)[[image:lss-flowarm-wrist-angle-view.png||alt="lss-flowarm-wrist-view.jpg"]]|(% style="text-align:center; vertical-align:middle" %)[[image:lss-flowarm-wrist-view-3dof.png||alt="lss-flowarm-wrist-view.jpg"]]|(% style="text-align:center; vertical-align:middle" %)[[image:lss-flowarm-wrist-angle-view-3dof.png||alt="lss-flowarm-wrist-view.jpg"]]
187 187  
188 -=== End effector position ===
171 +=== End Effector Position ===
189 189  
190 -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.
173 +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. When in keyboard mode, there is an overlay indicating which keys do what motion.
191 191  
192 -When in keyboard mode, there is an overlay indicating which keys do what motion.
193 -
194 194  [[image:lss-flowarm-positioning.png||alt="lss-flowarm-positioning.jpg"]]
195 195  
196 196  == Data Log ==
... ... @@ -221,13 +221,13 @@
221 221  
222 222  === Sequences ===
223 223  
224 -The sequencer allows you to make your robot move over time by transitioning from one position to another. Each transition we call a frame and a sequence of frames we call a sequence. You can create as many sequences as you like. You can play sequences back manually or using the keyboard inputs mentioned below. This section describes the sequence management functions of the Sequencer.
205 +The sequencer allows you to make your robot move over time by transitioning from one position to another. Each transition is called a "frame" and a sequence of frames is called a "sequence". You can create and save as many sequences as you like. Sequences can be played back manually or using the keyboard inputs mentioned below.
225 225  
226 226  === Sequence List ===
227 227  
228 228  [[image:lss-flowarm-pattern-list.jpg]]
229 229  
230 -The sequence list is the first control on the sequencer. If you click on the arrow on the right-hand edge you'll see a list of the sequences that have been created and by selecting one you can move to that sequence. You can also scroll through the list one-by-one using the up and down arrow buttons. Clicking on the name of a sequence will allow you to change this. Simply type in the box then press the Return key or click away.
211 +If you click on the drop-down arrow on the right-hand you'll see a list of available sequences that have been created. Selecting one opens that sequence. You can also scroll through the list one-by-one using the up and down arrow buttons. Clicking on the name of a sequence to change it by typing in the box then pressing the Enter / Return key or clicking away.
231 231  
232 232  == Sequence Management ==
233 233  
... ... @@ -235,51 +235,48 @@
235 235  
236 236  === Add a Sequence ===
237 237  
238 -To add a sequence click the add button. A new sequence will appear in the list and its name will open for editing.
219 +To add a sequence click the plus (+) button. A new sequence will appear in the list and its name will open for editing.
239 239  
240 240  === Remove a Sequence ===
241 241  
242 -Click the remove sequence button to delete the currently selected sequence from the list. This action is irreversible so you will be asked for confirmation.
223 +Click the remove sequence button (-) to delete the currently selected sequence from the list. This action is irreversible so you will be asked for confirmation.
243 243  
244 244  === Duplicate a Sequence ===
245 245  
246 -If you want to make a new sequence based on an existing one then you can duplicate it.
227 +If you want to make a new sequence based on an existing one then you can duplicate it using the icon with superimposed squares.
247 247  
248 248  === Saving Sequences ===
249 249  
250 250  IMPORTANT: If you want to keep any sequences you create then you must export them otherwise they will be lost when you return to the project browser. 
251 -To do this click the export button. You can choose whether to export all your sequences or just the currently selected one. Sequences are saved to files so you'll need to pick a filename and folder to save to. If a sequence uses sub sequences these will be saved even if you choose only to save the selected sequence.
232 +To save a sequence click the export button (Save icon). You can choose whether to export all sequences or just the one currently selected. Sequences are saved to files so you'll need to pick a filename and folder to save to. If a sequence uses sub-sequences these will be saved even if you choose only to save the selected sequence.
252 252  
253 253  === Loading Sequences ===
254 254  
255 -If you have saved sequences that you want to restore then click the Import button. You will be asked to choose a previously saved sequence file.
256 -The sequences in the file will be added to the list. They do not replace the sequence list. Also it doesn't
257 -matter how many sequences the file contains, all of them will be imported.
236 +If you have saved sequences that you want to restore then click the Import button (open folder icon). You will be asked to choose a previously saved sequence file. The sequences in the file will be added to the list. They do not replace the sequence list. Also it doesn't matter how many sequences the file contains, all of them will be imported.
258 258  
259 259  === Clear All Sequences ===
260 260  
261 -If you want to start from scratch you can clear all the sequences from the list using the clear all button.
240 +If you want to start from scratch you can clear all the sequences from the list using the clear all button (multiple squares and X).
262 262  
263 263  == Frames ==
264 264  
265 265  [[image:lss-flowarm-frame.jpg]]
266 266  
267 -We now know how to manage sequences now lets see how you build one. As we said earlier a sequence is made up of frames. A frame represents a transition between robot states over time.
268 -In addition to frames, you can also add other sequences to a sequence. This allows quite complex series of movements to be built up very quickly and easily.
246 +Knowing how to manage sequences will now allow you to create one. As indicated earlier a sequence is made up of frames. A frame represents a transition between robot states over time. In addition to frames, you can also add other sequences to a sequence. This allows quite complex series of movements to be built up very quickly and easily.
269 269  
270 270  [[image:lss-flowarm-frames.jpg]]
271 271  
272 272  === Adding Frames ===
273 273  
274 -To add a frame click the Add button. A new frame will be added at the end of the sequence. The duration of the frame will be whatever the last frame duration was. The frame will record whatever position the robot is currently set to. You can add a sub sequence to the sequence by clicking the arrow to the right of the Add button. A drop list of the available sequences will appear. Select one and it will be added to the end of the sequence.
252 +To add a frame click the Add (+) button. A new frame will be added at the end of the sequence. The duration of the frame will be whatever the last frame duration was. The frame will record whatever position the robot is currently set to. You can add a sub sequence to the sequence by clicking the arrow to the right of the Add button. A drop list of the available sequences will appear. Select one and it will be added to the end of the sequence.
275 275  
276 276  === Recording to a Frame ===
277 277  
278 -When you add a frame it will record the state that the robot is currently in. If you want to change this state first select the frame by clicking on it. Next move the robot to the position you want to record. When you're happy press the record button. The frame will flash to indicate that it has been updated.
256 +When you add a frame it will record the state that the robot is currently in. If you want to change this state first select the frame by clicking on it. Next move the robot to the position you want to record. When you're happy press the record button (circle with red dot). The frame will flash to indicate that it has been updated.
279 279  
280 280  === Deleting Frames ===
281 281  
282 -To delete a sequence or frame from a sequence, click the Delete button.
260 +To delete a sequence or frame from a sequence, click the Delete button (X).
283 283  
284 284  === Naming Frames ===
285 285  
... ... @@ -287,7 +287,7 @@
287 287  
288 288  === Timeline Locking ===
289 289  
290 -[[image:lss-flowarm-lock.jpg]]
268 +[[image:lss-flowarm-lock.jpg||queryString="width=21&height=20" height="20" width="21"]]
291 291  
292 292  The timeline is locked by default. This means that frames will automatically run from one to the next – you cannot create space in between. Moving a frame past another one will move it along the order in the timeline. If the timeline is unlocked then you can move frames independently of each other and also create gaps of time in between.
293 293  
... ... @@ -337,7 +337,7 @@
337 337  
338 338  Once you have some frames in a sequence you can try playing it. Click the Play button to start the sequencer playing the current sequence. The play button lights up in green when the sequencer is playing. To stop playing click the Play button again or click the Stop button. You can reset the play position to the star by clicking the Reset button. You can also move the play position manually. Click on the black handle at the top of the playback position line and drag to move it.
339 339  
340 -[[image:lss-sequencer-handle.jpg||height="70" width="241"]]
318 +[[image:lss-sequencer-handle.jpg||queryString="width=241&height=70" height="70" width="241"]]
341 341  
342 342  === Assign an input to a sequence ===
343 343  
... ... @@ -350,7 +350,7 @@
350 350  
351 351  [[image:lss-flowarm-decision-frame.jpg]]
352 352  
353 -At the end of every sequence there is a permanent frame called the decision frame (it is orange for easy identification). Click on the top part (orange) to change the last action of the sequence. There are 3 options:
331 +At the end of every sequence there is a permanent frame called the "decision frame" (it is orange for easy identification). Click on the top part (orange) to change the last action of the sequence. There are 3 options:
354 354  
355 355  * STOP: once the sequence is completed, nothing else will happen
356 356  * LOOP: once the sequence is completed, it will repeat a set amount of time
... ... @@ -361,16 +361,16 @@
361 361  = Notifications =
362 362  
363 363  (% style="width:1037px" %)
364 -|(% style="text-align:center; width:450px" %)**Displayed Error**|(% style="text-align:center; width:100px" %)**LED Status**|(% style="text-align:center" %)**Informations**
342 +|(% style="text-align:center; width:450px" %)**Displayed Error**|(% style="text-align:center; width:100px" %)**LED Status**|(% style="text-align:center" %)**Information**
365 365  |{{lightbox image="lss-flowarm-notification-limp.png"/}}|(% colspan="1" rowspan="2" style="text-align:center; vertical-align:middle" %)(((
366 366  [[image:LSS-UserColor.png||alt="LSS-Error-SafeMode.gif"]]
367 367  
368 368  User Defined
369 -)))|User clicked on the "LIMP" button or FlowArm noticed an error and put the arm in "LIMP" by himself.
347 +)))|User clicked on the "LIMP" button or FlowArm noticed an error and put the arm "LIMP" by itself.
370 370  |{{lightbox image="lss-flowarm-notification-firmware.png"/}}|(((
371 -FlowArm noticed an earlier firmware version which is not compatible (SERVO 1 in this example).
349 +Old firmware version which is not compatible (SERVO 1 in this example).
372 372  
373 -* As suggested, use the LSS-Config software to update the servo(s)
351 +* Use the LSS-Config software to update the servo's firmware
374 374  )))
375 375  |{{lightbox image="lss-flowarm-notification-current.png"/}}|(% colspan="1" rowspan="2" style="text-align:center; vertical-align:middle" %)(((
376 376  [[image:LSS-Error-SafeMode.gif]]
... ... @@ -377,13 +377,13 @@
377 377  
378 378  Red Flashing
379 379  )))|(((
380 -FlowArm noticed a high current error on the specified servo (SERVO 4 in this example)
358 +Over-current error on the specified servo (SERVO 4 in this example)
381 381  
382 382  * Verify that noting is in the way of the servo that can block it's movement.
383 383  * Try to "RELEASE SERVOS" which will "RESET" the servo(s) in error.
384 384  )))
385 385  |{{lightbox image="lss-flowarm-notification-temperature.png"/}}|(((
386 -FlowArm noticed a high temperature error on the specified servo (SERVO 5 in this example).
364 +Over-temperature error on the specified servo (SERVO 5 in this example).
387 387  
388 388  * Let it cool down for a minute.
389 389  * Try to "RELEASE SERVOS" which will "RESET" the servo(s) in error.
... ... @@ -391,4 +391,10 @@
391 391  
392 392  = Troubleshooting =
393 393  
394 -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]]
372 +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:~~/~~/community.robotshop.com/forum/c/lynxmotion/electronics-software>>url:https://community.robotshop.com/forum/c/lynxmotion/electronics-software]]
373 +
374 += FlowBotics File =
375 +
376 +The .fsp file below can be imported into FlowBotics Studio to see how the interface was created. FlowBotics Studio allows you to make changes to the file, but you will not be able to create a new executable and need to run the modified program within FlowBotics.
377 +
378 +[[LSS FlowBotics 3.0.60>>attach:LSS FlowArm - 3.0.8.60.zip]]
LSS FlowArm - 3.0.8.60.zip
Author
... ... @@ -1,0 +1,1 @@
1 +xwiki:XWiki.ENantel
Size
... ... @@ -1,0 +1,1 @@
1 +1.1 MB
Content
lss_flowarm.zip
Author
... ... @@ -1,0 +1,1 @@
1 +xwiki:XWiki.ENantel
Size
... ... @@ -1,0 +1,1 @@
1 +2.8 MB
Content
Copyright RobotShop 2018