Last modified by Eric Nantel on 2024/09/06 14:52

From version < 61.1 >
edited by Coleman Benson
on 2023/07/27 15:00
To version < 46.1 >
edited by Coleman Benson
on 2023/07/27 09:26
< >
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -149,7 +149,7 @@
149 149  | |[[**F**irst Position (**D**eg)>>||anchor="HFirstPosition"]]|(% style="text-align:center" %) |(% style="text-align:center" %)QFD|(% style="text-align:center" %)CFD|No value|1/10°|Reset required after change.
150 150  | |[[Maximum **S**peed in **D**egrees>>||anchor="HMaximumSpeedinDegrees28SD29"]]|(% style="text-align:center" %)SD|(% style="text-align:center" %)QSD|(% style="text-align:center" %)CSD|Max|0.1°/s|SD overwrites SR / CSD overwrites CSR and vice-versa
151 151  | |[[Maximum **S**peed in **R**PM>>||anchor="HMaximumSpeedinRPM28SR29"]]|(% style="text-align:center" %)SR|(% style="text-align:center" %)QSR|(% style="text-align:center" %)CSR|Max|RPM|SD overwrites SR / CSD overwrites CSR and vice-versa
152 -| |[[Step Mode>>doc:||anchor="HStepMode28SM29"]]|(% style="text-align:center" %)SM|(% style="text-align:center" %)QM|(% style="text-align:center" %)CSM|2|1, 2, 4|Numbers represent fractions: full step, &frac12; step, &frac14; step
152 +| |[[Step Mode>>doc:||anchor="HStepMode"]]|(% style="text-align:center" %)SM|(% style="text-align:center" %)QM|(% style="text-align:center" %)CSM|2|1, 2, 4|Numbers represent fractions: full step, &frac12; step, &frac14; step
153 153  
154 154  |(% colspan="8" style="color:orange; font-size:18px" %)[[**Modifiers**>>||anchor="HModifiers"]]
155 155  |(% style="width:25px" %) |(% style="width:200px" %)**Description**|(% style="text-align:center; width:100px" %)**Modifier**|(% style="text-align:center; width:75px" %)**Query**|(% style="text-align:center; width:75px" %)**Config**|(% style="width:100px" %)**Default**|(% style="width:170px" %)**Unit**|**Notes**
... ... @@ -163,19 +163,19 @@
163 163  | |[[**Q**uery **M**odel **S**tring>>||anchor="HQueryModelString28QMS29"]]|(% style="text-align:center" %) |(% style="text-align:center" %)QMS|(% style="text-align:center" %) | | |Returns the model of servo (ex: LSS-ST1, LSS-HS1, LSS-HT1)
164 164  | |[[**Q**uery **F**irmware Version>>||anchor="HQueryFirmware28QF29"]]|(% style="text-align:center" %) |(% style="text-align:center" %)QF|(% style="text-align:center" %) | | |
165 165  | |[[**Q**uery Serial **N**umber>>||anchor="HQuerySerialNumber28QN29"]]|(% style="text-align:center" %) |(% style="text-align:center" %)QN|(% style="text-align:center" %) | | |Returns the unique serial number for the servo
166 -| |[[**Q**uery **T**emperature **P**robe>>doc:||anchor="HQueryTemperatureProbe28QTP29"]]|(% style="text-align:center" %) |(% style="text-align:center" %)QTP|(% style="text-align:center" %) | | |Queries temperature probe fixed to the stepper motor
167 -| |[[**Q**uery **T**emp of **M**CU>>doc:||anchor="HQueryMCUTemperature28QTM29"]]|(% style="text-align:center" %) |(% style="text-align:center" %)QTM|(% style="text-align:center" %) | | |
168 -| |[[**Q**uery **T**emp of **C**ontroller>>doc:||anchor="HQueryTempofController28QTCW29"]]|(% style="text-align:center" %) |(% style="text-align:center" %)QTCW, QTCE|(% style="text-align:center" %) | | |(((
166 +| |**Q**uery **T**emperature **P**robe|(% style="text-align:center" %) |(% style="text-align:center" %)QTP|(% style="text-align:center" %) | | |Queries temperature probe fixed to stepper motor
167 +| |**Q**uery **T**emp of **C**ontroller|(% style="text-align:center" %) |(% style="text-align:center" %)QTCW, QTCE|(% style="text-align:center" %) | | |(((
169 169  QTCW: Queries the temperature status of the motor controller (pre-warning)
170 170  
171 171  QTCE: Queries the temperature status of the motor controller (over-temp error)
172 172  )))
173 -| |[[**Q**uery **I**MU Linear **X**>>doc:||anchor="HQueryIMULinear28QIXQIYQIZ29"]]|(% style="text-align:center" %) |(% style="text-align:center" %)QIX|(% style="text-align:center" %) | |mm/s^2|
174 -| |[[**Q**uery **I**MU Linear **Y**>>doc:||anchor="HQueryIMULinear28QIXQIYQIZ29"]]|(% style="text-align:center" %) |(% style="text-align:center" %)QIY|(% style="text-align:center" %) | |mm/s^2|
175 -| |[[**Q**uery **I**MU Linear **Z**>>doc:||anchor="HQueryIMULinear28QIXQIYQIZ29"]]|(% style="text-align:center" %) |(% style="text-align:center" %)QIZ|(% style="text-align:center" %) | |mm/s^2|
176 -| |[[**Q**uery **I**MU Angular Accel **α** >>doc:||anchor="HQueryIMUAngular28QIAQIBQIC29"]]|(% style="text-align:center" %) |(% style="text-align:center" %)QIA|(% style="text-align:center" %) | |°/s^2|Query IMU Angular Accel α (Alpha)
177 -| |[[**Q**uery **I**MU Angular Accel **β**>>doc:||anchor="HQueryIMUAngular28QIAQIBQIC29"]]|(% style="text-align:center" %) |(% style="text-align:center" %)QIB|(% style="text-align:center" %) | |°/s^2|Query IMU Angular Accel β (Beta)
178 -| |[[**Q**uery **I**MU Angular Accel **γ**>>doc:||anchor="HQueryIMUAngular28QIAQIBQIC29"]]|(% style="text-align:center" %) |(% style="text-align:center" %)QIC / QIG|(% style="text-align:center" %) | |°/s^2|Query IMU Angular Accel γ (Gamma)
172 +| |**Q**uery **C**urrent **S**peed |(% style="text-align:center" %) |(% style="text-align:center" %)QCS|(% style="text-align:center" %) | | |Queries the motor controller's calculated speed
173 +| |**Q**uery **I**MU Linear **X**|(% style="text-align:center" %) |(% style="text-align:center" %)QIX|(% style="text-align:center" %) | |mm/s^2|
174 +| |**Q**uery **I**MU Linear **Y**|(% style="text-align:center" %) |(% style="text-align:center" %)QIY|(% style="text-align:center" %) | |mm/s^2|
175 +| |**Q**uery **I**MU Linear **Z**|(% style="text-align:center" %) |(% style="text-align:center" %)QIZ|(% style="text-align:center" %) | |mm/s^2|
176 +| |**Q**uery **I**MU Angular Accel **α** |(% style="text-align:center" %) |(% style="text-align:center" %)QIA|(% style="text-align:center" %) | |°/s^2|Query IMU Angular Accel α (Alpha)
177 +| |**Q**uery **I**MU Angular Accel **β**|(% style="text-align:center" %) |(% style="text-align:center" %)QIB|(% style="text-align:center" %) | |°/s^2|Query IMU Angular Accel β (Beta)
178 +| |**Q**uery **I**MU Angular Accel **γ**|(% style="text-align:center" %) |(% style="text-align:center" %)QIC / QIG|(% style="text-align:center" %) | |°/s^2|Query IMU Angular Accel γ (Gamma)
179 179  
180 180  |(% colspan="8" style="color:orange; font-size:18px" %)[[**RGB LED**>>||anchor="HRGBLED"]]
181 181  |(% style="width:25px" %) |(% style="width:200px" %)**Description**|(% style="text-align:center; width:100px" %)**Action**|(% style="text-align:center; width:75px" %)**Query**|(% style="text-align:center; width:75px" %)**Config**|(% style="width:100px" %)**Default**|(% style="width:170px" %)**Unit**|**Notes**
... ... @@ -185,19 +185,13 @@
185 185  
186 186  == (% style="color:inherit; font-family:inherit" %)Communication Setup(%%) ==
187 187  
188 -|(% colspan="2" %)(((
189 -====== __Reset__ ======
190 -)))
191 -| |(((
192 -Ex: #5RESET<cr>
188 +====== (% style="color:inherit; font-family:inherit" %)__Reset__(%%) ======
193 193  
194 -This command does a "soft reset" and reverts all commands to those stored in EEPROM (i.e. configuration commands). Note: after a RESET command is received, the LSS will restart and perform initilization again, making it unavailable on the bus for a bit. See Session, note #2 for more details.
195 -)))
190 +(% style="color:inherit; font-family:inherit" %)Ex: #5RESET<cr>
191 +This command does a "soft reset" and reverts all commands to those stored in EEPROM (i.e. configuration commands). Note: after a RESET command is received, the LSS will restart and perform initilization again, making it unavailable on the bus for a bit. See Session, note #2 for more details.
196 196  
197 -|(% colspan="2" %)(((
198 198  ====== (% style="color:inherit; font-family:inherit" %)__Default & confirm__(%%) ======
199 -)))
200 -|(% style="width:30px" %) |(((
194 +
201 201  (% style="color:inherit; font-family:inherit" %)Ex: #5DEFAULT<cr>
202 202  
203 203  (% style="color:inherit; font-family:inherit" %)This command sets in motion the reset of all values to the default values included with the version of the firmware installed on that servo. The servo then waits for the CONFIRM command. Any other command received will cause the servo to exit the DEFAULT function.
... ... @@ -207,12 +207,9 @@
207 207  (% style="color:inherit; font-family:inherit" %)Since it it not common to have to restore all configurations, a confirmation command is needed after a firmware command is sent. Should any command other than CONFIRM be received by the servo after the firmware command has been received, it will exit the command.
208 208  
209 209  (% style="color:inherit; font-family:inherit" %)Note: After the CONFIRM command is sent, the servo will automatically perform a RESET.
210 -)))
211 211  
212 -|(% colspan="2" %)(((
213 213  ====== (% style="color:inherit; font-family:inherit" %)__Update & confirm__(%%) ======
214 -)))
215 -|(% style="width:30px" %) |(((
206 +
216 216  (% style="color:inherit; font-family:inherit" %)Ex: #5UPDATE<cr>
217 217  
218 218  (% style="color:inherit; font-family:inherit" %)This command sets in motion the equivalent of a long button press when the servo is not powered in order to enter firmware update mode. This is useful should the button be broken or inaccessible. The servo then waits for the CONFIRM command. Any other command received will cause the servo to exit the UPDATE function.
... ... @@ -222,23 +222,15 @@
222 222  (% style="color:inherit; font-family:inherit" %)Since it it not common to have to update firmware, a confirmation command is needed after an UPDATE command is sent. Should any command other than CONFIRM be received by the servo after the firmware command has been received, it will leave the firmware action.
223 223  
224 224  (% style="color:inherit; font-family:inherit" %)Note: After the CONFIRM command is sent, the servo will automatically perform a RESET.
225 -)))
226 226  
227 -|(% colspan="2" %)(((
228 228  ====== (% style="color:inherit; font-family:inherit" %)__Confirm__(%%) ======
229 -)))
230 -|(% style="width:30px" %) |(((
218 +
231 231  (% style="color:inherit; font-family:inherit" %)Ex: #5CONFIRM<cr>
232 232  
233 233  (% style="color:inherit; font-family:inherit" %)This command is used to confirm changes after a Default or Update command.
234 234  Note: After the CONFIRM command is sent, the servo will automatically perform a RESET.
235 -)))
236 236  
237 -|(% colspan="2" %)(((
238 -====== (% style="color:inherit; font-family:inherit" %)__ID Number__(%%) ======
239 -)))
240 -|(% style="width:30px" %) |(((
241 -This assigns ID #5 to the servo previously assigned to ID 0
224 +====== (% style="color:inherit; font-family:inherit" %)__ID Number (**ID**)__(%%) ======
242 242  
243 243  (% style="color:inherit; font-family:inherit" %)Configure ID Number (**CID**)
244 244  
... ... @@ -251,12 +251,9 @@
251 251  Ex: #254QID<cr> might return *254QID5<cr>
252 252  
253 253  In this case, the broadcast ID is used to ensure the servo connected will reply with the ID. This can be used in case the ID assigned to a servo is forgotten.
254 -)))
255 255  
256 -|(% colspan="2" %)(((
257 -====== (% style="color:inherit; font-family:inherit" %)__Enable CAN Terminal Resistor__(%%) ======
258 -)))
259 -|(% style="width:30px" %) |(((
238 +====== (% style="color:inherit; font-family:inherit" %)__Enable CAN Terminal Resistor (**ET**)__(%%) ======
239 +
260 260  Query Enable CAN Terminal Resistor (**QET**)
261 261  
262 262  Ex: #5QET<cr> might return *QET0<cr>
... ... @@ -268,27 +268,20 @@
268 268  (% style="color:inherit; font-family:inherit" %)Ex: #5CET1<cr>
269 269  
270 270  (% style="color:inherit; font-family:inherit" %)This commands sets servo with ID 5 as being the last in the CAN Bus. The last servo in a CAN bus must be configured this way.
271 -)))
272 272  
273 -|(% colspan="2" %)(((
274 -====== __USB Connection Status__ ======
275 -)))
276 -|(% style="width:30px" %) |(((
252 +====== __USB Connection Status (**UC**)__ ======
253 +
277 277  Query USB Connection Status (**QUC**)
278 278  
279 279  Ex: #5QUC<cr> might return *5QUC1<cr> meaning the servo is connected via USB
280 -)))
281 281  
282 -|(% colspan="2" %)(((
283 -====== __Firmware Release__ ======
284 -)))
285 -|(% style="width:30px" %) |(((
258 +====== __Firmware Release (**FR**)__ ======
259 +
286 286  Query Firmware Release (**QFR**)
287 287  
288 288  Ex: #5QFR<cr> might return *QFR11<cr> meaning it has a (random) firmware release version number 11.
289 289  
290 290  This is used to verify if the firmware on the servos is up to date, or which version is running on the microcontroller.
291 -)))
292 292  
293 293  == Motion ==
294 294  
... ... @@ -494,10 +494,8 @@
494 494  
495 495  This command will cause servo #5's positions to be inverted, effectively causing the servo to rotate in the opposite direction given the same command. For example in a 2WD robot, servos are often physically installed back to back, therefore setting one of the servos to a negative gyration, the same wheel command (ex WR30) to both servos will cause the robot to move forward or backward rather than rotate.
496 496  
497 -Query Gyre Direction (**QG**)
470 +Query Gyre Direction (**QG**)Ex: #5QG<cr> might return *5QG-1<cr>
498 498  
499 -Ex: #5QG<cr> might return *5QG-1<cr>
500 -
501 501  The value returned above means the servo is in a counter-clockwise gyration. Sending a #5WR30 command will rotate the servo in a counter-clockwise gyration at 30 RPM.
502 502  
503 503  Configure Gyre (**CG**)
... ... @@ -534,24 +534,6 @@
534 534  
535 535  Configure Speed in RPM (**CSR**)Ex: #5CSR45<cr>Using the CSR command sets the servo's maximum speed which is saved in EEPROM. In the example above, the servo's maximum speed will be set to 45rpm. When the servo is powered on (or after a reset), the CSR value is used. Note that CSD and CSR are effectively the same, but allow the user to specify the speed in either unit. The last command (either CSR or CSD) received is what the servo uses for that session.
536 536  
537 -====== __Step Mode (**SM**)__ ======
538 -
539 -Ex: #8SM2<cr>
540 -
541 -This sets servo with ID 8 to 1/2 step mode. Since this is an action as opposed to a configuration, it only affects that session.
542 -
543 -Note that the torque and max RPM of the actuator will be affected.
544 -
545 -Query Step Mode (**QSM**)
546 -
547 -Ex: #8QSM<cr> might return *8QSM2<cr> meaning servo with ID 8 is set to half step mode.
548 -
549 -Configure Step Mode (**CSM**)
550 -
551 -Ex: #8SM2<cr>
552 -
553 -This sets servo with ID 8 to 1/2 step mode. Since this is a configuration as opposed to a configuration and the servo will be in 1/2 step mode when powered.
554 -
555 555  == Modifiers ==
556 556  
557 557  ====== __Speed (**SD**) modifier__ ======
... ... @@ -583,27 +583,23 @@
583 583  
584 584  == Telemetry ==
585 585  
586 -====== __Query PCB Temperature (**QT**)__ ======
539 +====== __Query Voltage (**QV**)__ ======
587 587  
588 -Ex: #5QT<cr> might return *5QT564<cr>
541 +Ex: #5QV<cr> might return *5QV11200<cr>
589 589  
590 -The units are in tenths of degrees Celcius, so in the example above, the servo's internal temperature is 56.4 degrees C. To convert from degrees Celcius to degrees Farenheit, multiply by 1.8 and add 32. Therefore 56.4C = 133.52F.
543 +The number returned is in milliVolts, so in the case above, servo with ID 5 has an input voltage of 11.2V.
591 591  
592 -====== __Query Temperature Probe (**QTP**)__ ======
545 +====== __Query Temperature (**QT**)__ ======
593 593  
594 -Ex:
547 +Ex: #5QT<cr> might return *5QT564<cr>
595 595  
596 -====== __Query Temp of Controller (**QTCW**)__ ======
549 +The units are in tenths of degrees Celcius, so in the example above, the servo's internal temperature is 56.4 degrees C. To convert from degrees Celcius to degrees Farenheit, multiply by 1.8 and add 32. Therefore 56.4C = 133.52F.
597 597  
598 -Ex:
551 +====== __Query Motor Driver Current (**QC**)__ ======
599 599  
600 -An alternative is QTCE
601 -
602 -====== __Query Current (**QC**)__ ======
603 -
604 604  Ex: #5QC<cr> might return *5QC140<cr>
605 605  
606 -The units are in milliamps, so in the example above, the servo is consuming 140mA, or 0.14A. It represents the RMS value. The query calculates the RMS value of the current sent from the motor driver to the stepper motor.
555 +The units are in milliamps, so in the example above, the servo is consuming 140mA, or 0.14A. It represents the RMS value.
607 607  
608 608  ====== __Query Model String (**QMS**)__ ======
609 609  
... ... @@ -622,17 +622,3 @@
622 622  Ex: #5QN<cr> might return *5QN12345678<cr>
623 623  
624 624  The number in the response (12345678) would be the servo's serial number which is set and should not be changed by the user.
625 -
626 -====== __Query IMU Linear (**QIX** **QIY** **QIZ**)__ ======
627 -
628 -Ex: #6QIX<cr> might return *6QIX30<cr>
629 -
630 -This command queries servo 6's IMU's linear accelerometer in the X direction. The response is 30mm per second squared.
631 -
632 -====== __Query IMU Angular (**QIA** **QIB** **QIC**)__ ======
633 -
634 -Ex: #6QIB<cr> might return *6QIB44<cr>
635 -
636 -This command queries servo 6's IMU's linear accelerometer in the X direction. The response is 4.4 degrees per second squared.
637 -
638 -
Copyright RobotShop 2018