- 博客(11)
- 资源 (4)
- 收藏
- 关注
原创 定点数学习
做定点运算: a = 314 × 25 >> 8 → 很快,CPU 直接算,在工作中需要尽可能节省算力,所以嵌入式工程里都是用整数模拟小数。一个 s16 有 16 位:第 15 位 = 符号位,第 14~0 位 = 数值位。Q格式 = 用整数的高位和低位分别表示整数部分和小数部分。Q16.16:定点值 = 实际值 × 65536。Q1.15:定点值 = 实际值 × 32768。公式 :定点值 = 实际值 × 2^n。整数 -32768 = -1.0。第 30~16 位 = 整数部分。
2026-07-22 15:48:25
210
原创 有感霍尔控制foc
文章摘要: 霍尔传感器利用霍尔效应检测磁场,常用于电机位置检测。霍尔FOC方案通过3个120°安装的霍尔传感器提供6个离散扇区信号,需通过算法插值获得连续转子角度。核心挑战包括:安装误差校准(预定位+θ_offset补偿)及角度估算(线性插值或锁相环法)。线性插值法假设匀速旋转,积分推算角度;锁相环法则通过闭环反馈修正误差,适用于动态场景。两种方法均需在霍尔跳变沿重置角度以消除累积误差,平衡精度与实时性。适用于低成本有感FOC驱动,如家电和工业电机控制。
2026-07-21 13:29:16
310
1
原创 c++学习
c++学习 c++和c语言的区别c++的特点:静态类型、编译式、通用的大小写敏感的编程语言,支持过程化编程和面向对象编程和泛型编程的高级语言。有提高大规模编程质量与程序设计语言的问题描述能力。 应用领域1.游戏开发2.服务器开发3.嵌入式物联网4.vr及人工智能 c的语法 ...
2022-04-06 11:41:50
629
原创 匿名自动飞行任务
6.5还有两天答辩,回头看去,程控飞行成功了。代码也很熟了,完成的任务我感觉有点少光那个平移函数就费了快俩个月了,其实非常简单,如果有过来人一星期不用就能完成。自己摸索没人带效率是真的低阿。本来可以完成的更多,唉,留给学弟吧。收拾收拾二战去了。 在这里我把自动飞行的程序和思路说一下,其实匿名留了平移函数,我也一直都知道,但是一直用不起来。后来在群里偶然看到那个函数需要在模式2定点模式下才能用,哎,我一直用的是模式3程控模式啊,害死人,,,,,浪费我那么长时间。 在模式2定点模式下,只需调用平移函数就欧克了。
2021-06-05 12:38:37
693
6
原创 姿态解算imu
看了几天公式都看明白了,回到代码就难受了,看不懂。 此函数在文件 Ano_FlightDataCal.c 被调用, 入口参数 采样周期/imu状态结构体指针(实际传入的是&imu_state) 三向陀螺仪/三向加速度计/三向磁力计/imu结构体句柄指针(实际传入的是&imu_data) void IMU_update(float dT,_imu_state_st *state,float gyr[VEC_XYZ], float acc[VEC_XYZ],s16 mag_val[VEC_XYZ
2021-03-29 16:55:04
3790
3
原创 3.17Ano_AltCtrl,Ano_LocCtrl,Ano_AttCtrl 高度角度位置PID
这个是高度环pid的文件 void Auto_Take_Off_Land_Task(u8 dT_ms)//一键自动飞行 { 这里真正实现了,自动飞行 。 static u16 take_off_ok_cnt; one_key_take_off_task(dT_ms);//调用一键飞行函数 if(flag.unlock_sta) { if(flag.taking_off) { if(flag.auto_take_off_land == AUTO_TAKE_OFF_NULL)
2021-03-17 18:56:18
680
1
原创 匿名拓空者2四轴飞控程序标志位说明
匿名四轴飞控程序标志位说明 标志位太多了,我想把它们都理一下,可能理不全,我尽量。 typedef struct { //基本状态/传感器 u8 start_ok; u8 sensor_imu_ok; u8 motionless; //无人机是否动检测标志 u8 power_state; u8 wifi_ch_en; u8 chn_failsafe; u8 rc_loss; u8 rc_loss_back_home; u8 gps_ok; //控制状态 u8 manual
2021-03-16 19:50:46
1052
原创 3.15 Ano_RC
void unlock(u8 dT_ms)//解锁的函数 { if( flag.power_state <=2 && para_sta.save_trig == 0)//只有电池电压非最低并且没有操作flash时,才允许进行解锁 { if(sens_hd_check.acc_ok && sens_hd_check.gyro_ok) { if(sens_hd_check.baro_ok) { if(flag.sensor_imu_ok
2021-03-16 19:32:07
316
原创 2021-03-07毕设开始实验日志Ano_FlightCtrl
匿名飞控程序1 一、学习Ano_FlightCtrl 3.7今天买了飞控板,匿名科创的拓空者,程序很复杂,标志位和参数巨多。 卖家也没有完整的一系列的学习步骤,只能慢慢自己摸索。 程序方面前面有main函数和scheduler函数比较直观 ,没什么可说的,总共就那么多函数我看到哪个学哪个吧。 Ano_FlightCtrl这个函数还挺重要的,对于参加比赛有不少要自己写的地方。 一开始是这个函数 1. void All_PID_Init(void)//姿态高度位置pid初始化 这没什么可说的 2. /*控制参
2021-03-07 19:58:39
590
3
原创 四轴无人机毕设开始
毕设四轴无人机 考研结束了,不出意外考的很差,老师在考试之前就说过我有些浮躁,我现在有点怀疑自己的能力了,等二战吧,毕业论文开始了。 这次采用的是匿名科创的拓空者飞控,stm32f407主控板,其实我大二就搞过四轴,当时能力实在不够也没向同学请教,所以就失败了 项目任务 完成无人机的自主任务,能实现前进、后退、转弯、上升下降设定高度。设想的是做成一个个函数接口,直接设定参数就行。如果时间充足的话,我再把摄像头加进去这样就能巡线识别目标了。 3月到4月组装并调试好无人机能遥控器控制飞行。 4月到5月写程序并
2021-03-07 17:20:37
2644
2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅