< >
Home » PX4开发指南 » PX4开发指南-7.5.1.命令

PX4开发指南-7.5.1.命令

PX4开发指南-7.5.1.命令

模块参考:命令

bl_update

bl_update [参数...]
   setopt        设置可选位来解锁FLASH(仅在锁定状态时需要)

   <file>        引导程序的二进制文件

config

  • 源代码: systemcmds/config

  • 配置传感器驱动器(采样率、发布频率以及范围等等)

  • 用法

config <命令> [参数...]
 命令:

<file:dev> 参数通常是/dev/{gyro,accel,mag}i之一
   block         锁定传感器主题发布
     <file:dev>  传感器驱动文件

   unblock       解锁传感器主题发布
     <file:dev>  传感器驱动文件

   sampling      设置传感器采样率
     <file:dev> <rate> 传感器驱动文件和采样频率,单位Hz

   rate          设置传感器发布频率
     <file:dev> <rate> 传感器驱动文件和发布频率,单位Hz

   range         设置传感器测量范围
     <file:dev> <rate> 传感器驱动文件和范围

   check         执行传感器自检(并打印信息)
     <file:dev>  传感器驱动文件

dumpfile

  • 源代码: systemcmds/dumpfile

  • 转储文件实用程序。 以二进制模式打印文件大小和内容(不要用CR LF替换LF)到stdout。

  • 用法

dumpfile [参数...]
     <file>      转储文件

esc_calib

  • 源代码: systemcmds/esc_calib

  • 电调校准工具

  • 校准流程(运行此命令将引导完成):

    • 移除螺旋桨,电调断电

    • 关闭姿态控制器:mc_att_control stop,fw_att_control stop

    • 确保安全开关关闭

    • 运行此命令

  • 用法

esc_calib [参数...]
     [-d <val>]  选择PWM输出设备
                 可选: <file:dev>, 缺省: /dev/pwm_output0
     [-l <val>]  最低PWM值,单位,us
                 缺省: 1000
     [-h <val>]  最高PWM值,单位,us
                 缺省: 2000
     [-c <val>]  以这种形式选择通道:1234 (每一位代表一个通道,1为第一通道)
     [-m <val>]  通过位掩码的形式选择通道(例如,0xF为第三通道))
                 缺省: 0
     [-a]        选择所有通道

hardfault_log

hardfault_log <命令> [参数...]
 命令:
   check         检查是否存在未提交的硬故障

   rearm         抛掉一个未提交的硬故障

   fault         抛出一个硬故障 (这个命令会让系统崩溃:)
     [0|1]       硬故障类型: 0=除零, 1=断言 (缺省值为0)

   commit        将未提交的硬故障写入/fs/microsd/fault_%i.txt
                 (并执行rearm,但不会执行reset)

   count         读取重启计数器,统计一个未提交的硬故障的重启次数
                (作为程序的退出码返回)

   reset         重置重启计数器

led_control

  • 源代码: systemcmds/led_control

  • 说明

  • 控制和测试(外部)LED的命令行工具。

  • 要使用它,请确保有一个处理led_control uorb主题的驱动程序运行。

  • 可以设置不同的优先级,例如一个模块可以以低优先级设置颜色,另一个模块可以以高优先级闪烁N次,那么LED将在闪烁后自动返回到较低优先级的状态。 reset命令也可以用于返回较低的优先级。

  • 示例

  • 第一个LED以蓝色闪烁5次

led_control blink -c blue -l 0 -n 5
  • 用法
led_control <命令> [参数...]
 命令:
   test          运行测试模式

   on            点亮LED

   off           熄灭LED

   reset         重置LED的优先级

   blink         闪烁LED
     [-n <val>]  闪烁次数
                 缺省: 3
     [-s <val>]  设置闪烁速度
                 可选: fast|normal|slow, 默认: normal

   breathe       持续地淡入淡出(呼吸灯)

 以下参数适用于除'test'之外的所有上述命令:
     [-c <val>]  颜色
                 可选: red|blue|green|yellow|purple|amber|cyan|white
                 缺省: white
     [-l <val>]  指定控制的LED: 0, 1, 2, ... 
                 缺省: -1(所有)
     [-p <val>]  优先级
                 缺省: 2

listener

限制:只能监听一个主题的第一个实例。

  • 用法
listener [参数...]
     <topic_name> [<num_msgs>] uORB主题名称以及消息数目(可选,缺省为1)

mixer

  • 源代码: systemcmds/mixer

  • 说明

  • 加载或附加混控器文件到ESC驱动程序。

注意,驱动程序必须支持所用的ioctl函数,例如NuttX支持,但RPi不支持。

  • 用法
mixer <命令> [参数...]
 命令:
   load
     <file:dev> <file> 输出设备(例如:/dev/pwm_output0)和混控器文件

   append
     <file:dev> <file> 输出设备(例如:/dev/pwm_output0)和混控器文件

motor_ramp

  • 源代码: systemcmds/motor_ramp

  • 说明

  • 测试电机加速的应用

  • 开始前,请务必关闭所有运行中的姿态控制器:

mc_att_control stop
fw_att_control stop
  • 启动时,作为后台任务启动,运行指定时间,然后退出。

注意:此命令目前只支持/dev/pwm_output0输出。

  • 示例
motor_ramp sine 1100 0.5
  • 用法
motor_ramp [参数...]
     ramp|sine|square 模式
     <min_pwm> <time> [<max_pwm>] pwm值单位为us,时间单位为sec

警告:电机将加速到全速!

motor_test

注意:这只能用于支持motor_test uorb主题的驱动程序(目前有uavcan和tap_esc)

  • 用法
motor_test <命令> [参数...]
 命令:
   test          设置电机到指定输出值
     [-m <val>]  待测试电机(0...7,如不指定,则为全部)
                 缺省: -1
     [-p <val>]  以百分比设置输出值 (0...100)
                 缺省: 0

   stop          停止所有电机

   iterate       依次启动并停止所有电机

mtd

  • 源代码: systemcmds/mtd

  • 挂载并测试分区(基于飞控板定义的FRAM / EEPROM存储)的实用程序

  • 用法

mtd <命令> [参数...]
 命令:
   status        打印状态信息

   start         挂载分区

   readtest      执行读取测试

   rwtest        执行读写测试

   erase         擦除分区

 命令 'start'、'readtest'、'rwtest'和'erase'有可选参数: 
     [<partition_name1> [<partition_name2> ...]] 
     分区名称 (例如,/fs/mtd_params), 如果未指定的话,该参数为系统默认值

nshterm

  • 源代码: systemcmds/nshterm

  • 在给定端口上启动NSH shell。

  • 以前用于在USB串行端口上启动shell,现在运行mavlink,可以在mavlink上使用shell。

  • 用法

nshterm [参数...]
     <file:dev>  运行shell的设备(例如,/dev/ttyACM0)

param

  • 源代码: systemcmds/param

  • 说明

  • 通过shell或脚本访问和操作参数的命令。

  • 例如,用于在启动脚本中设置与机型相关的参数。

  • 当参数更改时可以自动保存,例如,param set。参数通常存储在FRAM或SD卡中。 param select可以用于更改存储位置以供后续保存(需要在每次启动时重新配置)。

  • 每个参数都有一个'used'标志,它在引导过程中被读取时设置。 它只用于向地面控制站显示相关参数。

  • 示例

  • 更改机型并确保机型的默认参数被加载:

param set SYS_AUTOSTART 4001
param set SYS_AUTOCONFIG 1
reboot
  • 用法
param <命令> [参数...]
 命令:
   load          从文件中载入参数(覆盖所有)
     [<file>]    文件名 (如未给出,则使用缺省值)

   import        从文件中导入参数
     [<file>]    文件名 (如未给出,则使用缺省值)

   save          保存参数到文件
     [<file>]    文件名 (如未给出,则使用缺省值)

   select        选择缺省文件
     [<file>]    文件名 (如未给出,则使用<root>/eeprom/parameters)

   show          显示参数值
     [-c]        仅显示有变动的参数
     [<filter>]  参数名过滤器(允许在参数名的最后使用通配符,例如sys_*)

   set           设置参数
     <param_name> <value> 参数名和参数值
     [fail]      如果设置了该参数,那么如果没有找到参数,则命令失败

   compare       比较参数,如果相等,则命令成功
     <param_name> <value> 参数名和待比较的值

   greater       比较参数,如果参数大于待比较值,则命令成功
     <param_name> <value> 参数名和待比较的值

   reset         重置参数到缺省值
     [<exclude1> [<exclude2>]] 不重置匹配到的参数(允许在参数名的最后使用通配符)

   reset_nostart 重置除过SYS_AUTOSTART和SYS_AUTOCONFIG以外的参数到缺省值 
     [<exclude1> [<exclude2>]] 不重置匹配到的参数(允许在参数名的最后使用通配符)

   index         显示给定序号的参数
     <index>     序号: 大于等于0的整数

   index_used    显示给定序号的已用参数
     <index>     序号: 大于等于0的整数

   find          显示给定参数的序号
     <param>     参数名

perf

perf [参数...]
   reset         重置所有计数器

   latency       打印HRT定时器延迟直方图

 如果没有给出,则打印所有性能计数器

pwm

  • 源代码: systemcmds/pwm

  • 说明

  • 该命令用于配置舵机和电调的PWM输出。

  • 默认设备/dev/pwm_output0是主通道,辅助通道为/dev/pwm_output1-d参数指定)。

  • 在启动脚本中使用来确保PWM参数(PWM_*)被正确配置(如果指定机型配置,则由机型配置文件提供PWM参数)。

  • pwm info显示当前设置(修正值是一个偏移量并由PWM_MAIN_TRIMxPWM_AUX_TRIMx配置)。

  • 应该设置锁定值,使得电机在最小值时不会旋转(同样用于终止开关)。

  • 通道被分配成组。由于硬件限制,更新速率只能以组为单位设置。使用pwm info显示组。如果使用-c参数,则必须包括该组的所有通道。

  • 可以将参数-p-r设置为参数,而不是指定一个整数:例如,使用-p p:PWM_MIN。

注意,在OneShot模式下,PWM范围[1000, 2000]自动映射到[125, 250]。

  • 示例

  • 设置所有通道的PWM速率为400Hz:

pwm rate -a -r 400
  • 测试例如通道1和通道3的输出,将PWM值设置为1200 us:
pwm arm
pwm test -c 13 -p 1200
  • 用法
pwm <命令> [参数...]
 命令:
   arm           解锁输出

   disarm        锁定输出

   info          打印所有通道的当前配置信息

   forcefail     强制切换Failsafe模式
     on|off      打开|关闭

   terminatefail 强制切换Termination Failsafe模式
     on|off      打开|关闭

   rate          配置PWM速率
     -r <val>    PWM速率单位为Hz(0为Oneshot模式,其它50到400Hz)

   oneshot       配置Oneshot125 (速率设置为0)

   failsafe      设置Failsafe模式的PWM值

   disarmed      设置锁定PWM值

   min           设置最小PWM值

   max           设置最大PWM值

   test          设置输出为指定值直到'q'或'c'或'ctrl-c'被按下

   steps         从0到100%分5步运行

 命令'failsafe'、'disarmed'、'min'、'max'和'test'需要指定PWM值:
     -p <val>    PWM值 (例如1100)

 命令'rate'、'oneshot'、'failsafe'、'disarmed'、'min'、'max'、'test'和'steps'
 需要额外以下列参数中的一个指定通道:
     [-c <val>]  以这种形式选择通道:1234 (每一位代表一个通道,
                 1代表第一个通道)
     [-m <val>]  以位掩码的形式选择通道(例如,0xF, 3)
                 缺省: 0
     [-g <val>]  通过组来选择通道(例如,0, 1, 2. 使用'pwm info'显示组)
                 缺省: 0
     [-a]        选择所有通道

 这些参数可用于所有命令:
     [-d <val>]  选择PWM输出设备
                 可选: <file:dev>, 缺省: /dev/pwm_output0
     [-v]        详细输出
     [-e]        发生错误时以1退出,而不是0

reboot

reboot [参数...]
     [-b]        重启进入引导程序

sd_bench

sd_bench [参数...]
     [-b <val>]  一次读写的块大小
                 缺省: 4096
     [-r <val>]  运行次数
                 缺省: 5
     [-d <val>]  运行持续时间,单位:ms
                 缺省: 2000
     [-s]        每块运行结束后调用fsync(缺省,每次运行完成后调用)

top

  • 源代码: systemcmds/top

  • 监控运行进程及其CPU占用,堆栈使用情况,优先级和状态

  • 用法

top [参数...]
   once          仅仅打印一次

usb_connected

  • 源代码: systemcmds/usb_connected

  • 检查USB是否连接的实用程序。以前在启动脚本中使用。 返回0表示USB已连接,否则为1。

  • 用法

usb_connected [参数...]

ver

ver <命令> [参数...]
 命令:
   hw            硬件架构

   mcu           MCU信息

   git           git版本信息

   bdate         构建日期和时间

   gcc           编译器信息

   uid           UUID

   mfguid        制造商UUID

   uri           构建URI

   all           打印所有版本信息

   hwcmp         比较硬件版本(匹配的话返回0)
     <hw>        待比较的硬件(例如,PX4FMU_V4)

纠错,疑问,交流: 请进入讨论区点击加入Q群

获取最新文章: 扫一扫右上角的二维码加入“创客智造”公众号


标签: px4开发指南