【原创】从头开始探讨做四轴飞控之飞控焊接出炉《...
本帖最后由 china 于 2014-1-6 19:53 编辑今天终于焊接好了第一块硬件,开始软件调试了。先来看看板子资源的。
采用MPU6050和HMC5883 BMP085或MS5611作为传感器包含三路串口输出一个IIC接口一个SPI接口
一个超声波接口蜂鸣器SD读写。8路PWM输出和8路PWM输入。
电位器调节PID 三个参数。
准备移植FATFS系统,直接TF卡记录飞行数据,不再使用串口传输才能记录。
程序开头需要包含以下几个方面:
LED初始化,
串口初始化
超声波初始化
IMU初始化
蜂鸣器初始化
PID读取初始化
PWM初始化
PPM初始化
Initial_LED_GPIO();
Initial_UART1(115200L);
Initial_UART2(115200L);
Initial_UART3(115200L);
Init_Sr();
IIC_Init();
Buzz_init();
IMU_init();
Pid_Init();
等这几方面。
最简单的就是LED和蜂鸣器的初始化了,只需要设定好了Io为输出,则可以驱动了其开关或者断开了。
蜂鸣器初始化
今天焊接了这块板子,就写了这两个程序,剩下的,接着调试……
自己做的?
无机翼的飞机8 发表于 2014-1-5 21:33 static/image/common/back.gif
自己做的?
是的。多多指教。 不敢 我可不懂 我看着有点像这个飞控
无机翼的飞机8 发表于 2014-1-5 22:15 static/image/common/back.gif
不敢 我可不懂 我看着有点像这个飞控
这是高端货,木法比的。 做了几个啊,出我一个行不? 自己做的成品,测试了没啊 首先,你要是靠AD采样调整PID有些不明智,因为在你飞平后至少还有2个PID需要调整,就是高度和GPS定位的,可以通过EEPROM实现在线修改PID参数的,还有就是传感器,我这里没能处理掉硬件IIC的问题,用模拟的拖慢了处理器速度,实在不敢用,我现在都是在用MPU6000 HMC5983 MS5611的全SPI组合,跑自稳循环有人测试成功过是8000次每秒 tam1974 发表于 2014-1-6 05:59 static/image/common/back.gif
做了几个啊,出我一个行不?
程序还没有写完呢。 312366 发表于 2014-1-6 07:11 static/image/common/back.gif
自己做的成品,测试了没啊
待测试,课多,没太多时间的。 李老板没钱了 发表于 2014-1-6 09:33 static/image/common/back.gif
首先,你要是靠AD采样调整PID有些不明智,因为在你飞平后至少还有2个PID需要调整,就是高度和GPS定位的,可 ...
之所以有AD是不断调整PID,并不是固定调节某个PID,硬件设计有硬件设计的,这是为了能够更好的移植,我只是做着玩,跑太快也得看传感器更新速度,MS5611本身是有8MS更新延迟,8000次都在读同一个数据也没意思的。 china 发表于 2014-1-6 12:24 static/image/common/back.gif
之所以有AD是不断调整PID,并不是固定调节某个PID,硬件设计有硬件设计的,这是为了能够更好的移植,我只 ...
哈哈,这你就不知道了,我都是在用传感器的外部中断在读取数据,数据没更新我是绝对不会去读取的,MS5611能用系统时间计算出读取它的大概时间,其实之所以要这么快是为了能加入类似于模糊自整定PID,扩展卡尔曼滤波算法的,省下的大量计算空间,这样就可以进行进一步的GPS定位计算和计算PID控制环,姿态解算其实可以解算出多个不一样的值用多个PID环路控制电机以达到最好的效果,类似四元数能解算1个旋转轴,我可以反解算回3个,加速度计我可以配合气压计和超生波整合三个控制环进行控制,这样就能达到更高的效果,要是单纯的整合别人的程序去配合他的硬件,有些东西还是可以自由发挥的 李老板没钱了 发表于 2014-1-6 20:44 static/image/common/back.gif
哈哈,这你就不知道了,我都是在用传感器的外部中断在读取数据,数据没更新我是绝对不会去读取的,MS5611 ...
你是高手,我们都是业余的,所以也用不这么多算法,只是自己玩玩而已。 李老板没钱了 发表于 2014-1-6 20:44 static/image/common/back.gif
哈哈,这你就不知道了,我都是在用传感器的外部中断在读取数据,数据没更新我是绝对不会去读取的,MS5611 ...
受教了,多谢指导!
页:
[1]