amoBBS 阿莫电子论坛

 找回密码
 注册
搜索
bottom↓
楼主: wangjt1988

开源自己的微型四轴—全套原理图.程序.上位机.11日晚更新

  [复制链接]
发表于 2013-4-12 18:56:46 | 显示全部楼层
先顶一个。。。
发表于 2013-4-13 10:54:29 | 显示全部楼层
lz ,不知道你的那个接收直接用devo 10  刷suv固件 后是不是 选择和 华科尔的2401遥控器一样的模式 就可以飞行了,还有就是你这四轴上的5883能用吗?不是说小四轴的电机干扰很厉害吗,不知道解决了没?
发表于 2013-4-14 18:29:09 | 显示全部楼层
agnd 发表于 2013-1-11 06:12
我的控制算法和你差不多,都是最简易的 控制量= 基础油门+横滚调整+俯仰调整+航向调整
这种算法在自动起飞 ...

专业的简洁的回复~~
发表于 2013-4-14 18:33:52 | 显示全部楼层
不错  !话说楼主的四轴看起来V5 87阿  and V字仇杀队里的主角很喜欢~
发表于 2013-4-14 18:34:58 | 显示全部楼层
小号 发表于 2013-1-10 22:30
楼主做的真心漂亮啊!!!

那是非常的漂亮阿 有木有!
发表于 2013-4-15 17:13:22 | 显示全部楼层
标记一下 开始准备做!
发表于 2013-4-17 20:06:32 | 显示全部楼层
怀着一颗学习的心情
发表于 2013-4-17 22:02:05 | 显示全部楼层
新手拜读
发表于 2013-4-18 10:15:46 | 显示全部楼层
wangjt1988 发表于 2013-1-11 07:47
下一版板子好了,5883焊好了,电机还没装,装上再试试

问一下楼主 HMC5883离电机这么近 电机的磁场应该会对5883的数据有干扰吧~楼主是怎样解决这个问题的呢?
 楼主| 发表于 2013-4-18 12:16:23 来自手机 | 显示全部楼层
Nurke 发表于 2013-4-18 10:15
问一下楼主 HMC5883离电机这么近 电机的磁场应该会对5883的数据有干扰吧~楼主是怎样解决这个问题的呢? ...

目前还是在用6050   还没解决
发表于 2013-4-18 16:26:41 | 显示全部楼层
谢谢楼主的开源共享
发表于 2013-4-18 23:05:22 | 显示全部楼层
收藏好。。。。
发表于 2013-4-21 16:43:23 | 显示全部楼层
貌似楼主的原理图和程序是不配套的,请问楼主怎么回事?原理图不是最终版么?
我看了一下,LED电机等的引脚定义都是不一样的。
 楼主| 发表于 2013-4-21 18:49:37 来自手机 | 显示全部楼层
原理图是最终的   程序是第一板   当时还没来及改   就是io变了下   现在还在更新了…
发表于 2013-4-21 20:13:03 | 显示全部楼层
顶了,正要找四元数
发表于 2013-4-21 22:07:10 | 显示全部楼层
卖个板子给俺被
发表于 2013-4-22 01:47:39 | 显示全部楼层
wangjt1988 发表于 2013-4-5 20:33
上位机已经更新  在新帖子里  更完善  加入3d模型显示

LZ我翻遍了贴子也没看见最新上位机的下载地址。在下实在是眼拙略。请楼主明示具体位置
 楼主| 发表于 2013-4-22 09:02:51 来自手机 | 显示全部楼层
zhaoshimax 发表于 2013-4-22 01:47
LZ我翻遍了贴子也没看见最新上位机的下载地址。在下实在是眼拙略。请楼主明示具体位置 ...

在另一个帖子里…在……共享也有  你懂的
发表于 2013-4-22 14:50:31 | 显示全部楼层
楼主,淘宝店链接不正确
发表于 2013-4-22 15:51:38 | 显示全部楼层
这个飞控程序的大致的框架是怎样的,或者需要需要做哪些工作?新接触程序,请大侠多指教
发表于 2013-4-28 17:40:23 | 显示全部楼层
楼主能否留一个联系方式啊
 楼主| 发表于 2013-4-28 20:44:07 来自手机 | 显示全部楼层
Qq 940079007
 楼主| 发表于 2013-4-28 20:45:46 来自手机 | 显示全部楼层
51 放完假就有网络了     终于脱离无网的日子了
发表于 2013-4-28 21:31:33 | 显示全部楼层
开源的知识,无私的楼主
发表于 2013-5-1 18:20:39 | 显示全部楼层
嗯 目前只下电路图看下
发表于 2013-5-1 21:45:17 来自手机 | 显示全部楼层
标记标记
发表于 2013-5-3 10:47:30 | 显示全部楼层
看了你的程序,有点点疑问就是“#define halfT 0.001f  ” 是定义一半采集间隔的,  我见你陀螺仪采集是设成1KHZ,  那么这里应该是0.0005f吧, 还是有什么其他的情况?
发表于 2013-5-3 15:48:06 | 显示全部楼层
,顶,LS,好厉害
发表于 2013-5-3 16:49:36 | 显示全部楼层
真厉害!!!
发表于 2013-5-3 16:52:56 | 显示全部楼层
上位机可以不要吧!
发表于 2013-5-3 21:21:12 | 显示全部楼层
顶起,这阶段打算好好学习,做好自己的四轴
发表于 2013-5-4 10:39:27 | 显示全部楼层
必须顶!!
发表于 2013-5-4 14:57:41 | 显示全部楼层
顶一个,不错不错。
发表于 2013-5-5 10:03:11 | 显示全部楼层
向楼主请教一个问题,我看楼主用的姿态 控制程序是 论坛里的 imu.c 这个算法 .我测试了这个算法,在静止时 ,yaw 漂移很慢 , 只要一晃动, yaw 就会朝一个方向快速漂移.我看楼主并没有直接从这个算法求yaw  不知道楼主是如何处理的??
 楼主| 发表于 2013-5-5 17:13:33 | 显示全部楼层
济南电子爱好者 发表于 2013-5-5 10:03
向楼主请教一个问题,我看楼主用的姿态 控制程序是 论坛里的 imu.c 这个算法 .我测试了这个算法,在静止时 , ...

yaw不要用四元数算,直接积分陀螺
发表于 2013-5-5 18:56:53 | 显示全部楼层
wangjt1988 发表于 2013-5-5 17:13
yaw不要用四元数算,直接积分陀螺

不用四元数处理的话,这里的yaw 直接积分的角度,显然就不是真实的欧拉角了 .打个比方,机体做 pitch旋转 ,当旋转 超过 pi/2  时  yaw 会由 0度变成 -179(我指的是相反方向)度 .当然简化看待的话,可以这样处理.
发表于 2013-5-5 22:28:01 | 显示全部楼层
楼主说的“主角STM32:速度可以,什么都可以,就是iic蛋疼....实在蛋疼,还没AVR好用......不想多说了...”
深有体会啊,费了九牛二虎之力,定义了多个状态变量,终于实现中断中初始化和读取传感器数据呢....
发表于 2013-5-6 22:54:21 | 显示全部楼层
好东西 学习!
发表于 2013-5-7 14:51:51 来自手机 | 显示全部楼层
留名。。。
发表于 2013-5-8 13:19:30 | 显示全部楼层
mark 四轴 开源
发表于 2013-5-13 22:07:23 | 显示全部楼层
nice楼正很强悍了
发表于 2013-5-17 00:00:41 | 显示全部楼层
LZ现在啥情况了啊,新的啥时候出来,还开源吧?
发表于 2013-5-18 23:11:25 | 显示全部楼层
wangjt1988 发表于 2013-5-5 17:13
yaw不要用四元数算,直接积分陀螺

直接积分陀螺只能算是一个相对的角度,不能称为yaw角,yaw角一定要知道正北的,而且长时间积分陀螺误差会很大。
 楼主| 发表于 2013-5-19 20:22:34 | 显示全部楼层
因为只用了加速度和陀螺,只能这样解决了......相当于得到了一个不断漂移的yaw,但是人眼可以不断观测,不断调整机头方向,没办法,有磁场的话就可以headfree模式了
发表于 2013-5-26 00:06:51 | 显示全部楼层
LZ何时有空板子,施舍一块啊,做的确实不错
发表于 2013-5-26 01:05:30 | 显示全部楼层
干嘛用MDK 4.7 低版本的别打不开啊。LZ新的产品啥时候出现啊,还开源不?
发表于 2013-5-26 14:41:00 | 显示全部楼层
本帖最后由 svon 于 2013-5-26 14:48 编辑
济南电子爱好者 发表于 2013-5-5 10:03
向楼主请教一个问题,我看楼主用的姿态 控制程序是 论坛里的 imu.c 这个算法 .我测试了这个算法,在静止时 , ...


你好,我现在刚开始做IMU数据融合,想请问一下我该从什么开始入手呢?卡尔曼滤波?不知能否推荐一下比较好的资料呢?
发表于 2013-5-26 14:43:34 | 显示全部楼层
mcu1234mcu 发表于 2013-5-18 23:11
直接积分陀螺只能算是一个相对的角度,不能称为yaw角,yaw角一定要知道正北的,而且长时间积分陀螺误差会 ...

得到陀螺仪和加速度计的角度之后该用什么处理呢?刚入门融合,希望能指教一下
发表于 2013-5-27 19:27:57 | 显示全部楼层
楼主,你的pid中“rool_i -= PID_RP.I * Q_ANGLE.Rool”这一句是什么意思?还有你的PID种对yaw的算法很难懂,能否解释一下,万分感谢
发表于 2013-5-28 20:55:35 | 显示全部楼层
svon 发表于 2013-5-26 14:41
你好,我现在刚开始做IMU数据融合,想请问一下我该从什么开始入手呢?卡尔曼滤波?不知能否推荐一下比较 ...

我的一个基本过程是, 先会一种单片机,正确读取数据, 数据滤波融合, 四元数计算欧拉角
发表于 2013-5-29 13:08:51 | 显示全部楼层
LZ上位机源码公开了吗,不知道LZ的上位机是用什么写的,刚开始学习写上位程序,看你的上位机的波形做的蛮漂亮的,想学习一下
发表于 2013-5-29 13:10:29 | 显示全部楼层
很漂亮,赞一个。
发表于 2013-5-30 17:30:21 | 显示全部楼层
耐心看完,谢谢楼主分享,期待新帖子
发表于 2013-5-31 20:55:44 | 显示全部楼层
济南电子爱好者 发表于 2013-5-28 20:55
我的一个基本过程是, 先会一种单片机,正确读取数据, 数据滤波融合, 四元数计算欧拉角 ...

谢谢  我现在也读出了数据,也可以通过四元数计算欧拉角。但是陀螺仪在积分的过程中难免会积累误差,导致最后跑飞。请问该解决这个问题呢?
发表于 2013-6-1 10:50:31 | 显示全部楼层
给力               
发表于 2013-6-1 12:04:09 | 显示全部楼层
看到楼主说的一句话,眼泪掉了一大把。
“因为平时上班忙,工作也全与电子无关,所以进度比较慢.”
。。。。。。。。。。。。。。
发表于 2013-6-4 10:38:33 | 显示全部楼层
rantingting 发表于 2013-5-26 01:05
干嘛用MDK 4.7 低版本的别打不开啊。LZ新的产品啥时候出现啊,还开源不?

有MDK的程序么?求一份。。。IAR不习惯
发表于 2013-6-4 18:06:30 | 显示全部楼层
chenjiawei7 发表于 2013-6-4 10:38
有MDK的程序么?求一份。。。IAR不习惯

耐心等着LZ分享中……
发表于 2013-6-5 12:42:06 | 显示全部楼层
MARK,MARK,
发表于 2013-6-5 21:51:01 | 显示全部楼层
楼主很棒!对了,我现在参考你的姿态算法,飞机效果显著,不过PID参数没找好,会有震荡。 电池的安装位置对PID参数影响大么?
发表于 2013-6-7 10:48:53 来自手机 | 显示全部楼层
顶一下,看看程序
发表于 2013-6-23 03:52:51 | 显示全部楼层
wangjt1988 发表于 2013-1-11 09:07
如果观察传感器波形,加速度陀螺仪磁场,就有18字节,加上6字节的角度,就24字节了,如果2ms发一次,波特率 ...

"如果2ms发一次,波特率至少115200"请问一下这个怎么理解啊?
 楼主| 发表于 2013-6-23 14:45:08 | 显示全部楼层
am_diy 发表于 2013-6-23 03:52
"如果2ms发一次,波特率至少115200"请问一下这个怎么理解啊?

发送间隔越小,需要的波特率就越高啊
发表于 2013-6-24 14:44:56 | 显示全部楼层
wangjt1988 发表于 2013-6-23 14:45
发送间隔越小,需要的波特率就越高啊

lz有MDK编写的工程吗
发表于 2013-6-24 18:23:37 | 显示全部楼层
请问一下,楼主的下位机的源代码呢?
发表于 2013-6-25 22:23:12 | 显示全部楼层
谢谢LZ分享,有空再下来学习一下算法。
 楼主| 发表于 2013-6-26 22:34:01 | 显示全部楼层
zhcj66 发表于 2013-6-24 14:44
lz有MDK编写的工程吗

正在写呢
 楼主| 发表于 2013-6-26 22:34:49 | 显示全部楼层
也无风雨赵 发表于 2013-6-24 18:23
请问一下,楼主的下位机的源代码呢?

论坛附件有的
发表于 2013-6-27 00:10:31 | 显示全部楼层
lou zhu hao yang de
发表于 2013-6-27 09:12:09 | 显示全部楼层
wangjt1988 发表于 2013-6-26 22:34
论坛附件有的

找到了,谢谢

发表于 2013-6-27 10:09:57 | 显示全部楼层
wangjt1988 发表于 2013-6-26 22:34
正在写呢

LZ你MDK编译的工程什么时候竣工?
发表于 2013-6-27 11:12:25 | 显示全部楼层
标记一下
感谢LZ,有时间好好学习一下
发表于 2013-6-27 21:38:53 | 显示全部楼层
学习中....................
发表于 2013-6-28 17:33:55 | 显示全部楼层
楼主NB啊,工作和电子无关!干什么工作啊?让我这个工作和电子有关的情何以堪啊?
发表于 2013-6-29 22:10:14 | 显示全部楼层
顶!开源精神!加油!
发表于 2013-7-1 23:42:01 | 显示全部楼层
楼主做的真心漂亮啊!!!谢谢楼主分享
发表于 2013-7-2 00:38:17 | 显示全部楼层
本人是新人没有入门,代码看不懂,下载源码,只有接收代码?用什么控?请楼主耐心说明!谢谢
 楼主| 发表于 2013-7-2 08:24:27 | 显示全部楼层
475345347 发表于 2013-7-2 00:38
本人是新人没有入门,代码看不懂,下载源码,只有接收代码?用什么控?请楼主耐心说明!谢谢 ...

这个代码是飞控上的,用的天地飞遥控,但是是用自己做的遥控板采集天地飞的信号再发给飞机
发表于 2013-7-3 23:59:18 | 显示全部楼层
lanzhujiang 发表于 2013-4-28 17:40
楼主能否留一个联系方式啊

张帅???????????????
发表于 2013-7-6 00:43:56 来自手机 | 显示全部楼层
强帖留名!
发表于 2013-7-6 19:54:38 | 显示全部楼层
好牛逼的说
发表于 2013-7-6 20:07:56 | 显示全部楼层
学习一下
发表于 2013-7-7 20:55:14 | 显示全部楼层
好帖子啊  嘿嘿
发表于 2013-7-7 21:43:15 | 显示全部楼层
mark一下
发表于 2013-7-15 14:13:30 | 显示全部楼层
kalman滤波是在那里加?
 楼主| 发表于 2013-7-15 15:57:16 来自手机 | 显示全部楼层
greato1 发表于 2013-7-15 14:13
kalman滤波是在那里加?

我觉得是在读取传感器读数后加
发表于 2013-7-16 18:12:40 | 显示全部楼层
下来程序和原理图看,好像程序有些地方和原理图不一致呀,比如程序中用PB6,PB7,PB8,PB9做电机PWM驱动引脚的,原理图好像是用的PA0~PA3呀。
发表于 2013-7-16 19:07:12 | 显示全部楼层
楼主的班子卖不卖啊?  邮箱hucheng1010@126.com  盼回复
发表于 2013-7-16 20:18:35 | 显示全部楼层
开源给力啊,但楼主能不能上传个keil的程序啊     迅速啊
 楼主| 发表于 2013-7-16 23:48:15 | 显示全部楼层
suda2008wuli 发表于 2013-7-16 18:12
下来程序和原理图看,好像程序有些地方和原理图不一致呀,比如程序中用PB6,PB7,PB8,PB9做电机PWM驱动引 ...

硬件一直在改动,这不,马上就出最新套件了,卖个关子   哈哈
 楼主| 发表于 2013-7-16 23:49:42 | 显示全部楼层
249624070 发表于 2013-7-16 19:07
楼主的班子卖不卖啊?  邮箱  盼回复

我签名有淘宝链接
发表于 2013-7-17 15:53:32 | 显示全部楼层
贼拉好的自学,正学习。
发表于 2013-7-23 11:24:23 | 显示全部楼层
楼主我有两个问题
1.
uint8_t GYRO_OFFSET_OK = 1;
uint8_t ACC_OFFSET_OK = 1;
这两个变量初始化为1,是不是开机不动测各个零点偏置?(这里我理解对吗)但是if(!GYRO_OFFSET_OK) 进不去,文件里面也没有对这个变量的清零的操作
2.
#define SCL_L         GPIOB->BRR  = GPIO_Pin_10 /* GPIO_ResetBits(GPIOB , GPIO_Pin_10) */

#define SDA_H         GPIOB->BSRR = GPIO_Pin_11 /* GPIO_SetBits(GPIOB , GPIO_Pin_11)   */
//原理图中SDA连的是 PB7   SCL连的是 PB6 这里为什么是 GPIOB的 GPIO_Pin_10和11呢
谢谢!
 楼主| 发表于 2013-7-23 17:00:40 | 显示全部楼层
pangyan111111 发表于 2013-7-23 11:24
楼主我有两个问题
1.
uint8_t GYRO_OFFSET_OK = 1;

1:这个需要遥控来触发
2:因为原理图上传的是最新的,当时板子还在厂家,程序就发的以前的,所以io有点小不同
发表于 2013-7-23 17:24:54 | 显示全部楼层
好东西~~~~~~~
发表于 2013-7-23 21:13:19 | 显示全部楼层
希望我以后也发一个...
发表于 2013-7-23 21:35:29 | 显示全部楼层
这个必须顶啊!!
发表于 2013-7-25 09:46:18 | 显示全部楼层
wangjt1988 发表于 2013-7-23 17:00
1:这个需要遥控来触发
2:因为原理图上传的是最新的,当时板子还在厂家,程序就发的以前的,所以io有点小不同 ...


有没有空解释一下这段代码呢,谢谢!!!
pitch         = PID_RP.P * DIF_ANGLE.Y;
               
        if(Q_ANGLE.Pitch>-0.1 && Q_ANGLE.Pitch<0.1)
        {
                pitch_i = 0;
        }
        pitch_i -= PID_RP.I * Q_ANGLE.Pitch;
        if(PID_RP.IMAX<0)       
        {
                PID_RP.IMAX = (-PID_RP.IMAX) + 100;
        }
        else
        {
                PID_RP.IMAX += 100;
        }
        if(PID_RP.IMAX<0)        PID_RP.IMAX = -PID_RP.IMAX;
        if(pitch_i>PID_RP.IMAX)         pitch_i = PID_RP.IMAX;
        if(pitch_i<-PID_RP.IMAX)        pitch_i = -PID_RP.IMAX;
        pitch += pitch_i;
       
        pitch -= PID_RP.D * GYRO_F.Y;
发表于 2013-7-25 10:39:16 | 显示全部楼层
顶一下,赚钱....         
发表于 2013-8-9 13:03:54 | 显示全部楼层
必须顶一个
友情提示:标题不合格、重复发帖,将会被封锁ID。详情请参考:论坛通告:封锁ID、获得注册邀请码、恢复被封ID、投诉必读
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|阿莫电子论坛(原ourAVR/ourDEV) ( 粤ICP备09047143号 )

GMT+8, 2017-11-20 23:30

阿莫电子论坛, 原"中国电子开发网"

© 2004-2016 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表