- 博客(48)
- 收藏
- 关注
原创 使用星网宇达XW-GNSS 1061基准站+XW-GI5610惯导+SD4电台*2 的RTK
摘要:本文介绍了XW-GNSS1061和SD4电台的配置流程。对于XW-GNSS1061,首先通过COM1口发送posaveonX命令设置自动定基站时间,然后保存配置;通过5610的COM0串口输出$GPFPD尾坠判断工作模式;将1061的COM2接入5610的RTK差分串口并配置为RTK差分功能。SD4电台配置包括:修改计算机IP地址为192.168.1.X,通过网页界面设置radio和communication ports参数并保存,正常工作时POWER灯常亮,PORT1&2闪烁,LAN灯亮。
2025-12-18 17:14:07
292
原创 LINUX下好用的图形化界面串口助手cutecom
在开始使用CuteCom之前,需要确定要连接的串口设备。图形化界面操作和正常串口助手一样,不再赘述。
2025-11-10 10:19:52
243
原创 使用Procise打包和烧写BOOT.bin文件
摘要:生成BOOT.bin文件需依次添加FSBL.out、.bit和应用程序.out三个文件,在Procise软件中选择【CreatBootImage】功能后点击CreatImage即可生成。固化烧写时通过【ProgramFlash】添加BOOT.bin路径并点击【Program】完成。关键步骤包括按顺序添加文件、生成BOOT.bin和烧写固件。
2025-11-08 16:18:26
513
原创 使用procise创建 IAR工程
本文介绍了Procise与IAR开发环境的配套使用方法。安装完成后需通过【Tools】-【IntergratedToolsOptions】将IAR的common/bin目录添加到Procise中建立链接。新建工程时需选择器件型号,Procise会自动打开工程并启用【FromVivado】功能。需要添加Vivado工程编译生成的.bd和.xci文件,选择【FSBL】和【HelloWorld】后,通过【Project】-【LanchIAR】即可自动打开新建的IAR工程。该流程实现了Procise与IAR的无缝衔
2025-11-08 15:58:37
379
原创 使用Windbg定位程序出错位置
文章摘要:本文介绍了如何使用Windbg调试工具捕获和诊断程序崩溃问题。首先在程序入口添加异常处理代码,通过SetUnhandledExceptionFilter注册崩溃处理函数,在程序崩溃时自动生成dump文件。随后使用Windbg打开dump文件,配置PDB符号路径和源码路径,通过analyze-v命令分析定位错误位置。这种方法可以快速找到程序崩溃的原因,便于开发者调试修复错误。
2025-10-27 15:36:36
207
原创 富士XT5 + XF23F1.4-WR使用笔记
使用了闪光灯+NC模式时曝光三要素的使用:当使用NC时要保证动态范围为400,所以ISO要设 置到500-620,再调快门速度使得匹配闪光灯速度,调整闪光灯功率到拍摄人物面部最佳,再调 整光圈大小提亮或虚化背景。白平衡调整:一般默认使用的是白色和自动,但是在人像拍摄时面目有时会偏黄,所以在人像摄影时使用色温模式,5300K。动态范围:NC模式下想把人物拍得通透一般设置为400,拍欧美分人文摄影这种更有质感得照片时用100/200更好。色彩曲线:H-2 S-1.5 使得高光和暗部的细节更加明显。
2025-07-30 11:36:42
1174
原创 使用flyeval.com小型无人机结构选型
摘要:研究采用北航flyeval.com在线评估平台对四旋翼无人机进行性能优化设计。通过输入电机、电调、螺旋桨等关键参数(图3.2),系统自动生成建模数据并输出飞行性能参数(图3.1)。平台提供基础性能参数(图3.3)和详细仿真数据(图3.4),实现无人机方案的快速评估与验证。(98字)
2025-07-09 09:10:28
369
原创 无人机IMU减震设计
本文探讨了无人机减震系统的设计原理与优化方法。通过分析弹簧阻尼系统的伯德图特性,指出减震系统本质上是一个低通滤波器,其自然频率应低于机体振动频率才能有效滤除高频噪声。研究提出降低系统固有频率的两种方法:使用更软的减震材料或适度增加飞控板质量,但后者需谨慎以避免低频晃动加剧。文中详细阐述了减震系统设计流程,强调振动隔离而非重量增加是核心解决方案,并提供了具体的验证方法,包括质量测量、减震材料选择以及通过FFT分析进行性能评估。最后指出理想的减震效果应使关键频率振动幅值控制在30mg以下,同时避免低频振动放大。
2025-07-09 09:04:52
1375
原创 一.自学PX4-打印Hello Sky!例程
本文介绍了在PX4嵌入式实时操作系统上开发简单应用程序的方法。通过创建一个打印"Hello Sky!"的示例程序,展示了PX4应用开发的基本流程:1)编写包含PX4_INFO日志函数的源码文件;2)配置CMakeLists.txt编译控制文件;3)通过Kconfig向系统注册应用。与普通计算机开发不同,PX4应用需遵循特定命名规则(如__EXPORT修饰的主函数命名),并使用系统提供的日志函数进行输出。文中还详细说明了如何编译烧写固件并运行测试程序。该示例为PX4应用开发提供了入门指导。
2025-07-02 16:45:21
944
原创 GPS和芯星通UM982初始化配置过程和测试问题
摘要:通过UM982模块配置GPS串口通信,需连接TTL转USB模块至电脑,选择COM3串口并设置波特率为115200。发送特定配置指令后需调整波特率至230400,确认硬件连接正常并使用3~5V供电的有源天线(需实测电压)。配置完成后重启设备将自动输出GPS数据。注意无源天线无法获取卫星信号。
2025-06-22 09:36:13
1838
原创 Vxworks环境搭建
再把D:\windriver\workbench-3.3\wrwb\platform\x86-win32\eclipse\wrwb-x86-win32.exe创建快捷方式到桌面即可。选择【Permanent activation】,路径选择D:\windriver\setup.log,点击【NEXT】完成安装。再将你的BSP包添加到D:\windriver\vxworks-6.9\target\config文件夹中。选择打开你的工程目录然后点击【finish】加载工程时右键,然后点击【import】
2025-05-07 10:45:29
290
原创 通过给PX4飞控发送MAVLINK消息控制飞控切换飞行模式
例如,无人机有自主飞行相关功能如自主起飞、自主降落,那么这个自主表示了一类模式的总和故可以表示为一级主模式,使用宏MAV_CUSTOM_MAIN_MODE_AUTO来表示,而自主模式下更细分为起飞、降落等二级模式,使用宏MAV_CUSTOM_SUB_MODE_AUTO_TAKEOFF等来表示。在PX4飞控中,定义的模式包括了两个部分,一个是主模式(main_mode),一个是子模式(sub_mode),从分层概念来讲可以将主模式叫做一级模式,子模式叫做二级模式。在QGC地面站查看MAV_SYS_ID为1。
2025-04-10 10:48:33
639
原创 PX4飞控-接收MAVLINK消息(3)-改mavlink_receiver.cpp和mavlink_receiver.h文件,用来接收对应的MAVLINK_MSG_ID消息
首先我们直接进入正题,第一节的command_control.msg文件编译后在PX4-Autopolite/bulid/zhty_norax_default/uORB/topics中生成了一个command_control.h文件。而同样在第二节中的修改的的common.xml文件编译以后也生成了一个mavlink_msg_command_control.h文件,其中也有一个名为。即可监听MAVLINK_MSG_ID_COMMAND_CONTROL这个ID的消息。则在PX4内部oURB的订阅中使用。
2025-03-27 16:30:57
737
原创 PX4飞控-接收MAVLINK消息(2)-生成MAVLINK_MSG_ID_***.h文件
进行通信,其中使用的C库和其他依赖文件,例如common文件夹均为从飞控源码中获取,文件获取位置为px4-Autopolite/bulid/mavlink中,因为PX4源码中自带MAVLINK的依赖项在编译过程中会自动处理common.xml文件,所以不需要再把common.xml文件导入生成MAVLINk的C库(不需要执行下图的操作)在编译生成的目录中Autopolite/bulid/mavlink/common/中可以找到生成的mavlink_msg_id_command_control.h文件。
2025-03-26 18:07:05
404
原创 PX4飞控-接收MAVLINK消息(1)-新建Msg文件
然后在编译生成的文件夹bulid/zhty_norax_default /uORB/topics中生成了一个Command_control.h文件。打开该文件可以看到根据.msg文件自动生成的结构体,生成的结构体会对结构体参数进行排序,是经过字节对齐后最节约内存空间的排布。自己新建个.msg文件,我这里新建了个Command_control.msg文件。一定要注意左边数据类型的拼写不然在编译源码时会报错!Command_control.msg文件。在该位置添加刚才新建的.msg文件(编译)
2025-03-26 17:39:31
421
原创 Px4-Autopolite编译环境搭建过程
不建议更改bootloader部分的配置,因为飞控跑bootloader的部分时间非常的短,会马上jump到default固件的程序。最好使用M国节点,克隆源码和安装依赖项,依赖项看PX4官方手册的步骤即可在这里不赘述,依赖项缺少的话可以根据编译时的提示进行补充。下载完成后会发现有一些submodule会failed,所以需要再更新下载子固件模块(源码的.gitmodules文件)列表里的就是可以更换的其他版本,不同的版本会影响在QGC地面站配置时的参数,所以按个人需求。完成后,编译一下看能不能编译通过。
2024-12-04 11:18:12
862
原创 QTCreator修改.exe软件图标
在阿里巴巴矢量图标库中,找到合适的图标,然后网页找个把图标文件转为.ico文件。.pro代码中添加RC_ICONS = test.ico。test.ico加到.pro文件同一目录。
2024-12-04 10:54:30
339
原创 QT按下两次按钮,保存这期间内变换的QtextEdit控件内的数据
这个功能在项目中很常见,对界面里某个控件的数据进行记录,我这个是每秒记录5次,实际就是每200ms触发一次定时器,来满足需求。
2024-11-28 14:35:55
380
原创 NMEA协议的GPS组合导航模块应用在PX4飞控中
如果想将这个组合导航模块接入到雷迅的nora+飞控中,雷迅飞控板设计的UART4(GPS2)接口是TTL电平没有RS232芯片,所以需要将组合导航模块的232输出端转为TTL信号再接入飞控中,否则定位数据到飞控段无法被解析。首先先通过RS232转USB连接电脑打开串口助手,配置波特率为115200,再将232接到组合导航的232接口上向组合导航模块配置发送对应协议数据的指令。支持双天线定位,数据输出方式为通过RS232接口输出NMEA协议的定位数据,飞控板使用的是雷迅的nora+
2024-11-28 12:12:47
986
3
原创 【PX4_Autopolite飞控源码】中飞控板初始化过程中的引脚IO控制(拉低/拉高)
找到board_config.h文件,打开nora后再往下去找Desktop/px4/PX4-Autopilot/boards/zhty/nora/src/borad_config.h。打开对应的路径我的是Desktop/px4/PX4-Autopilot/boards/zhty/nora。修改后再对固件进行重新编译 make_nora_default ,再将生成的PX4文件烧入飞控板即可。然后在初始化列表中添加该定义,即为init.c文件会按照列表执行该初始化操作。再将这两个添加到初始化列表中。
2024-11-26 17:16:01
806
原创 基于使用Stm32 ST—Link V2下载器进行STM32H7系列飞控板刷写bootloader的新方法
因为当我们把飞控里面的程序全部擦除后,我们就无法通过USB连接地面站,也就无法使用地面站进行固件的烧写了,所以为了让地面站识别到我们的设备,我们需要先将bootloader.bin通过STM32V2下载器的SWD连接Nora+飞控板上的JTAG。首先我们需要在PX4-Aultopolite(PX4飞控源码)中对一款飞控进行编译,因为我使用的是雷迅推出的nora+飞控,所以这里选择Boards/CUAV/Nora。编译成功以后,会在bulid里面生成一个cuav_nora_bootloader.bin文件。
2024-11-12 11:40:54
993
2
原创 (最有效)解决Vmware中打开Ubuntu系统蓝屏或报错VM 与 Device/Credential Guard 不兼容的方法
把VMware换成最新的版本再打开虚拟机!
2024-11-12 11:02:41
711
原创 STM32H7的EMMC存储器(XPF73EA0I芯盛智能)
Parameter Settings:(这里注意倒数第二行的分频为1,之前由于不明原因分频为0时SDMMC2的初始化无法通过)本文中使用STM32CubeMX生成的针对STM32H743芯片的HAL库对emmc进行读、写、擦除操作。点击SDMMC2配置为【MMC 8 bits Wide bus】(根据自己需求)先对SDMMC2初始化,这部分可完全使用STM32自动生成的不用去改变。测试使用时调用如下函数:(同样根据自己的需求,更改即可)初始化成功后加入下面的擦除-读-写测试函数。都配置好以后重新生成代码。
2024-06-17 17:13:20
2415
原创 如何在QT中开发软件定时执行一个操作的功能
最后总结,Qthread.msleep()线程延时时间过长容易导致软件卡死,但是他的时效性较高,级别也更高。所以可以将两部分混合使用,延时时间短时用Qthread.sleep(),在延时时间较长时使用QTime控件。QTimer可以避免软件延时时间过长会卡死,但是它的时效性较低。我分别使用了Qthread.msleep()和QTimer。比如在时间间隔比较长的情况下如何保证,周期执行不会出错。
2024-06-13 14:58:16
490
原创 Stm32H7系列定时中断设置HAL库
Stm32定时中断配置,在我们的日常调试中,想要以一个固定的时钟频率对传感器定时周期采样时往往会直接在main.c函数的While(1)中进行,通过HAL_Delay()来控制采样频率,但是如果多传感器同时采样的话由于HAL_Delay()的方法时效性不是很准确往往会出现一系列的问题,而使用定时中断的话,只需要进入中断并执行该传感器采集数据函数(或其他你想要以固定频率去做一些事情),采集完成后退出中断,所以在这里我们就来学学如何使用【定时中断】。我的time6时钟周期为1s/1Mhz=(1/10^6)s。
2024-05-30 12:24:04
1272
6
原创 在压缩文件时,压缩文件的格式该如何进行选择呢
ZIP 是一种常见的文件压缩格式,可以通过多种工具进行压缩和解压缩,如WinZip、7-Zip、WinRAR等。在大多数情况下,ZIP 格式提供了不错的压缩率和广泛的兼容性。:对于文本文件和一些特定类型的数据,Gzip 和 Bzip2 是常用的压缩工具。:7z 是一种高效的压缩格式,通常比传统的ZIP格式压缩率更高。:RAR 是另一种常见的压缩格式,提供了较高的压缩率。WinRAR 是一个流行的工具,可以创建和解压RAR格式的压缩文件。:XZ 是一种高效的压缩格式,通常提供比较好的压缩率。
2024-05-24 10:21:31
3315
XW-GI5610惯性/卫星组合导航系统的技术规格与操作手册
2024-12-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅