NT Module CLI: Difference between revisions
(Created page with "The NT modules provide a CLI, which can be accesses either by using the "NT Module CLI Tool" located in the [GUI:Tools] menu, or by using a standard terminal program, such as...") |
|||
(13 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
The NT modules provide a CLI, which can be accesses either by using the | The NT modules provide a CLI, which can be accesses either by using the {{GUI|NT Module CLI Tool}} located in the {{GUI|Tools}} menu, or by using a standard terminal program, such as HTerm. | ||
For accessing the CLI, the STorM32 main board can be used as a USB-TTL adapter to connect the NT module to the PC. That is, the NT module is connected to the STorM32 main board on the NT bus and the STorM32 main board is connected to a PC, typically via the main board's USB port. Before the CLI can be accessed, the STorM32 main board has first to be put into a pass-through mode by sending the special command "xQTNTQMODE0X" to it, where X stands for the ID of the module, e.g., X = 4 for accessing the pitch NT motor module, X = 5 for roll, and X = 6 for yaw. The STorM32 board then works as tunnel connecting the PC with the selected NT module. In the terminal program the baud rate is typically set to 115200 bps. | For accessing the CLI, the STorM32 main board can be used as a USB-TTL adapter to connect the NT module to the PC. That is, the NT module is connected to the STorM32 main board on the NT bus and the STorM32 main board is connected to a PC, typically via the main board's USB port. Before the CLI can be accessed, the STorM32 main board has first to be put into a pass-through mode by sending the special command "xQTNTQMODE0X" to it, where X stands for the ID of the module, e.g., X = 4 for accessing the pitch NT motor module, X = 5 for roll, and X = 6 for yaw. The STorM32 board then works as tunnel connecting the PC with the selected NT module. In the terminal program the baud rate is typically set to 115200 bps. | ||
The {{GUI|NT Module CLI Tool}} provides a series of buttons, which makes it convenient to send this, and other commands. | |||
{{COMMENT|The CLI can also be accessed by connecting the NT module on its NT port directly to a PC via a USB-TTL adapter, pretty much as one would do it for the [[NT_Data_Logging#Live_Recording|Live Recording]], except that now both the Tx and Rx lines need to be connected to the USB-TTL adapter. In the terminal program the baud rate must then be set to 2000000 bps.}} | |||
== CLI Commands common to all NT Modules == | |||
Each command needs to be terminated with a LF ('\n') or a ';' character. It is often more convenient to terminate them with a ';', it is thus listed in the below tables too. | |||
{| class="wikitable" | |||
!CLI command | |||
!effect | |||
|- | |||
| retrieve; || retrieve module settings from EEPROM | |||
|- | |||
| store; || store module settings into EEPROM | |||
|- | |||
| getsetup; || display current module settings | |||
|- | |||
| clrsetup; || set current module settings to default | |||
|- | |||
| | |||
|- | |||
| @Q || resets main board and module, note: don't add a ';' at the end | |||
|- | |||
| RESTART; || restarts QMODE | |||
|- | |||
| ntbuserrors; || display nt bus error count | |||
|} | |||
== NT IMU Modules == | |||
{| class="wikitable" | |||
!CLI command | |||
!effect | |||
|- | |||
| setidimu1|| set the module's ID to pitch (ID = 1) | |||
|- | |||
| setidimu2; || set the module's ID to roll (ID = 2) | |||
|- | |||
| setidimu3; || set the module's ID to yaw (ID = 3) | |||
|- | |||
| clrid; || set the module's ID to ID = 0 | |||
|- | |||
| | |||
|- | |||
| setaccfilt; || | |||
|- | |||
| clraccfilt; || | |||
|- | |||
| clracc; || | |||
|- | |||
| clrgyro; || | |||
|} | |||
== NT Motor-Encoder Modules == | |||
{| class="wikitable" | |||
!CLI command | |||
!effect | |||
|- | |||
| rrange; || run the encoder range test sequence | |||
|- | |||
| rpp; || run the motor pole pairs determination sequence | |||
|- | |||
| rofs; || run the motor offset determination sequence (result depends on motor pole pair number) | |||
|- | |||
| reval; || run the display encoder raw values sequence, send a character to stop it | |||
|- | |||
| | |||
|- | |||
| moveby X; || moves the motor by the given value (can be positive or negative) | |||
|- | |||
| moveto X; || moves the motor to the position specified by the given value (can be positive or negative) | |||
|- | |||
| movevmax X; || set the motor power in percent | |||
|- | |||
| | |||
|- | |||
| r2ppofs; || run the ranged motor pole pairs and offset determination sequence | |||
|- | |||
| r2sppofs X; || run the ranged motor pole pairs and offset determination sequence, with the number of the pole pairs fixed to the given value | |||
|- | |||
| r2ofs; || run the ranged motor offset determination sequence (result depends on motor pole pair number) | |||
|- | |||
| r2setrange X; || set the range used in the r2 commands | |||
|- | |||
| r2setvmax X; || set the motor power in percent used in the r2 commands | |||
|- | |||
| | |||
|- | |||
| getcal; || display the current pole pair and offset settings | |||
|- | |||
| clrpp; || set the current pole pairs to zero | |||
|- | |||
| clrofs; || set the current offset to zero | |||
|- | |||
| setpp X; || set the current pole pairs to the given value | |||
|- | |||
| setofs X; || set the current poffset to the given value | |||
|- | |||
| | |||
|- | |||
| setidpitch; || set the module's ID to pitch (ID = 4) | |||
|- | |||
| setidroll; || set the module's ID to roll (ID = 5) | |||
|- | |||
| setidyaw; || set the module's ID to yaw (ID = 6) | |||
|- | |||
| clrid; || set the module's ID to ID = 0 | |||
|- | |||
| setmodeltle5012b; || set the module's encoder to TLE5012B (spi) | |||
|- | |||
| setmodelas5048a; || set the module's encoder to AS5048A (spi) | |||
|- | |||
| setmodelma732; || set the module's encoder to MA732 (spi) | |||
|- | |||
| setmodelpotadc5; || set the module's encoder to a resistive sensor (poti) on ADC5 | |||
|- | |||
| clrmodel; || set the module's encoder to NONE | |||
|- | |||
| | |||
|- | |||
| setlpf2n; || set LPF for potentiometric encoders | |||
|- | |||
| clrlpf2n; || disable LPF for potentiometric encoders | |||
|- | |||
| | |||
|- | |||
| r4; || run the torque cogging sequence | |||
|- | |||
| getdt; || display the determined time constants | |||
|- | |||
| r5; || run the speed sequence | |||
|- | |||
| getspeed; || display the determined speed constants | |||
|- | |||
| streamX; || enable stream at rate X, X = 1,2,3,4 | |||
|- | |||
| | |||
|- | |||
| getreg; || display registers of TLE5012B encoder | |||
|} | |||
== NT Logger Module == | |||
{| class="wikitable" | |||
!CLI command | |||
!effect | |||
|- | |||
| readrtc|| reads and displays the RTC date and time | |||
|} |
Latest revision as of 03:21, 9 May 2023
The NT modules provide a CLI, which can be accesses either by using the [GUI:NT Module CLI Tool] located in the [GUI:Tools] menu, or by using a standard terminal program, such as HTerm.
For accessing the CLI, the STorM32 main board can be used as a USB-TTL adapter to connect the NT module to the PC. That is, the NT module is connected to the STorM32 main board on the NT bus and the STorM32 main board is connected to a PC, typically via the main board's USB port. Before the CLI can be accessed, the STorM32 main board has first to be put into a pass-through mode by sending the special command "xQTNTQMODE0X" to it, where X stands for the ID of the module, e.g., X = 4 for accessing the pitch NT motor module, X = 5 for roll, and X = 6 for yaw. The STorM32 board then works as tunnel connecting the PC with the selected NT module. In the terminal program the baud rate is typically set to 115200 bps.
The [GUI:NT Module CLI Tool] provides a series of buttons, which makes it convenient to send this, and other commands.
Comment: The CLI can also be accessed by connecting the NT module on its NT port directly to a PC via a USB-TTL adapter, pretty much as one would do it for the Live Recording, except that now both the Tx and Rx lines need to be connected to the USB-TTL adapter. In the terminal program the baud rate must then be set to 2000000 bps.
CLI Commands common to all NT Modules
Each command needs to be terminated with a LF ('\n') or a ';' character. It is often more convenient to terminate them with a ';', it is thus listed in the below tables too.
CLI command | effect |
---|---|
retrieve; | retrieve module settings from EEPROM |
store; | store module settings into EEPROM |
getsetup; | display current module settings |
clrsetup; | set current module settings to default |
@Q | resets main board and module, note: don't add a ';' at the end |
RESTART; | restarts QMODE |
ntbuserrors; | display nt bus error count |
NT IMU Modules
CLI command | effect |
---|---|
setidimu1 | set the module's ID to pitch (ID = 1) |
setidimu2; | set the module's ID to roll (ID = 2) |
setidimu3; | set the module's ID to yaw (ID = 3) |
clrid; | set the module's ID to ID = 0 |
setaccfilt; | |
clraccfilt; | |
clracc; | |
clrgyro; |
NT Motor-Encoder Modules
CLI command | effect |
---|---|
rrange; | run the encoder range test sequence |
rpp; | run the motor pole pairs determination sequence |
rofs; | run the motor offset determination sequence (result depends on motor pole pair number) |
reval; | run the display encoder raw values sequence, send a character to stop it |
moveby X; | moves the motor by the given value (can be positive or negative) |
moveto X; | moves the motor to the position specified by the given value (can be positive or negative) |
movevmax X; | set the motor power in percent |
r2ppofs; | run the ranged motor pole pairs and offset determination sequence |
r2sppofs X; | run the ranged motor pole pairs and offset determination sequence, with the number of the pole pairs fixed to the given value |
r2ofs; | run the ranged motor offset determination sequence (result depends on motor pole pair number) |
r2setrange X; | set the range used in the r2 commands |
r2setvmax X; | set the motor power in percent used in the r2 commands |
getcal; | display the current pole pair and offset settings |
clrpp; | set the current pole pairs to zero |
clrofs; | set the current offset to zero |
setpp X; | set the current pole pairs to the given value |
setofs X; | set the current poffset to the given value |
setidpitch; | set the module's ID to pitch (ID = 4) |
setidroll; | set the module's ID to roll (ID = 5) |
setidyaw; | set the module's ID to yaw (ID = 6) |
clrid; | set the module's ID to ID = 0 |
setmodeltle5012b; | set the module's encoder to TLE5012B (spi) |
setmodelas5048a; | set the module's encoder to AS5048A (spi) |
setmodelma732; | set the module's encoder to MA732 (spi) |
setmodelpotadc5; | set the module's encoder to a resistive sensor (poti) on ADC5 |
clrmodel; | set the module's encoder to NONE |
setlpf2n; | set LPF for potentiometric encoders |
clrlpf2n; | disable LPF for potentiometric encoders |
r4; | run the torque cogging sequence |
getdt; | display the determined time constants |
r5; | run the speed sequence |
getspeed; | display the determined speed constants |
streamX; | enable stream at rate X, X = 1,2,3,4 |
getreg; | display registers of TLE5012B encoder |
NT Logger Module
CLI command | effect |
---|---|
readrtc | reads and displays the RTC date and time |