这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » DIY与开源设计 » 电子DIY » 大渣渣的平衡车学习进程(更新至10-13号)

共11条 1/2 1 2 跳转至

大渣渣的平衡车学习进程(更新至10-13号)

助工
2015-08-16 20:54:14     打赏

电赛忙完了,开始调试平衡车了。

8-16 开始将在本帖更新学习和调试平衡车过程,以及遇到的问题和一些要注意的东西,希望和大家一起进步

第一次发帖,可能排版会有点问题,望见谅



1. 开箱,安装,蓝牙,超声波测试

2. MDK 安装

3. MDK 建立工程

4. NRF24L01 测试

5.  CCD调试

6.  遥杆控制小车



助工
2015-08-16 21:34:14     打赏
2楼

8-16更新:(安装,测试)




快递刚好在电赛开始那天到


然后利用 空余时间慢慢把车子拼好了


快递盒和里面全部东西,店家包装保护得真的很好。

小车上面没有OLED 是因为OLED在另外一个平衡车上,改天再去把OLED 装到这上面来吧


附上小车视频:



视频地址:http://player.youku.com/player.php/sid/XMTMxMTM3NDA0MA==/v.swf



视频地址:http://player.youku.com/player.php/sid/XMTMxMzcyNjYxMg==/v.swf


加上超声波模块和OLED后:



视频地址:http://player.youku.com/player.php/sid/XMTMxMzcyNjU4OA==/v.swf

视频地址:http://player.youku.com/player.php/sid/XMTMxMzcyNjU4MA==/v.swf


在期间的一些小问题:

1.  在下载程序的时候记得把红色开关拨到off 档,虽然实际上没有标off 。

也就是 拨到右手边

2.  下载完后 程序应该就会跑起来,如果下载过程中拿在手上,小车车轮就会狂转。

就像这样:



视频地址:http://player.youku.com/player.php/sid/XMTMxMTM3NDA0NA==/v.swf
 


把电源开关关了,红色开关拨到ON,保持小车大概直立打开电源开关,看见蓝灯和红灯都闪后,按一下左上角的按键开关就可以看见小车保持直立平衡了。


助工
2015-08-16 22:25:43     打赏
3楼

8-16更新:(MDK安装)


个人觉得keil 还是很人性化的,网上MDK5.14 安装包还是很多的,这里我还是给个链接吧

MDK 5.14百度云 http://pan.baidu.com/s/1bnnjANl

注册机  Keil_ARM_MDK_5.00_Keygen_serial_Crack.zip


破解过程还是很简单的,但是要 每个步骤都罗列出来还是挺麻烦的,实在不懂可以自己百度一下,这里我还是只给个参考的链接吧   

http://wenku.baidu.com/link?url=vR-gCQ0KFeLhiHsp496oXbssHDutcZIK_4pu2hJxmT9u9RyWVtw7Hz4ByoZThmMx92LyVfjFJ6KtygG9Fqw_ylCfwALMXsnuSqTwtkywp4q


在期间的一些小问题:

1.  卖家给的例程 开发平台是MDK4.7,低版本打开可能会无法完成编译,论坛上面更新的例程是MDK5.1 


助工
2015-08-17 19:37:07     打赏
4楼

8-17更新:(MDK5.14工程建立)


这里不对模板 工程的建立方法作介

安装好破解过后的MDK5.14 后打开软件,点击Project

新建工程

然后就弹出下面的界面


相应的芯片资料可以去官网下载,一般在安装完成MDK第一次打开是会有提示下载器件包,或者自己打开

进行对应的下载。

小车上面的是STM32F103C8T6,点击OK

配置自己的工程环境,这里面包括启动文件和核心文件,大家就按自己的需求来配置吧,在这儿我就只用了一些简单的功能。在这儿要注意一下,当你选择某个功能的时候软件会提示你要想这个功能正常工作,可能还会需要某些文件。必选的有COREStartup. 配置正确是绿色的,不正确是橙黄色。

下图是简单的一些配置



下面贴一张配置不正确的图


可以根据下面的提示来正确配置。

配置完成后新建一个main.c 或者add 一个main.c 文件



编译一下,没有问题


下面再说一下设置自动索引功能,点击图标

勾上就可以愉快的敲代码了

效果图

编辑得好累..有什么不对的地方欢迎指出,我会及时改过来的。




助工
2015-09-04 21:37:07     打赏
5楼
只用直立PD控制 有可能做到静止直立吗???

助工
2015-09-07 22:16:44     打赏
6楼

9-7更新:(NRF24L01测试)


经过一段时间的学习,对于stm32 有了大概的了解 然后觉得什么库函数寄存器版本都一样,可能是因为从51开始就自己写库吧 (这个装逼我给满分





先把原来默认注释的程序的 注释去掉,下载到安好24l01的小车上去



在原来的程序里正常情况使用24l01  oled是不显示的.. 具体看一下程序就懂了




用串口可以查看24l01 的好坏.. 我之前用了块坏的。。搞了半天还以为是程序问题。。幸好我有4块 还有一个问题就是为什么我以前 用51调24l01 调了个星期 = = 除了对寄存器有了更好的了解就是调不出来 这次又这么顺利 看人品的吗?


欧,忘了说了,我用的是普中 的板子来当发射端的





视频地址:http://player.youku.com/player.php/sid/XMTMzMDAzNzYxNg==/v.swf


附上之前调24l01参考的网站:

http://forum.eepw.com.cn/thread/249735/1

http://www.zhixinrui.com/forum-47-3.html


注意事项:

使用24l01时记得关了jtag,特别是发送端!有一些端口共用了...


助工
2015-09-10 15:46:05     打赏
7楼

刚好别人买了两个ccd,我就借了个过来玩玩

蓝宙的 3代

蓝宙的上位机和32例程

蓝宙电子线性CCD上位机软件.zip

CCD.zip


    之前调试CCD的时候在5ms的中断里面 调入CCD();结果 小车直接就黑了,这是什么情况,最开始调的时候是可以的,我去把CCD架上小车回来以后下载就不行,结果用万用表测电压什么的,试了 最原始的程序发现板子本身没有问题,后面才发现是代码的问题。

有人遇到同样的问题吗??


助工
2015-09-24 20:42:26     打赏
8楼

之前一直在调4个轮子的车,弄到不想弄了就来调调平衡车吧

架上CCD的样子,就是平衡的时候有点晃,用热胶粘上去的

首先要注意板子的CCD引脚是不是和CCD的引脚一样,之前我就因为这个一直得不到图像

CCD();函数放在5ms中断里面程序会有问题,而且在主函数里面用ccd的话,oled的刷新会明显降低




CCD就是128个光感二极管,摄像头看到的是一个面矩阵,CCD看到的是一根线,如果CCD扫描的时候移动的话,可以在上位机看到类似摄像头看到的黑白图像

下面讲一下我用来检测黑线,沿轨迹走的思路,大神勿喷~

看上位机传回的图像,对于程序里面判断黑线的方法,可以先检测出白纸的部分,即adc采集回来的数值大于一个定义好的阀值且在一定的数量

else if(Mid_Cnt <= 10 && ADV[j] > Value)    //先有白纸
{
Mid_Cnt++;
Flag_Mid = 1;
}

判断黑线就是在白纸的基础上连续检测到低于阀值的点,即判断为黑线的位置

附上视屏(在源程序的基础上把中线位置显示在oled的角度数值的后面)


视频地址:http://player.youku.com/player.php/sid/XMTM0NTQwOTA1Ng==/v.swf

CCD对于光线的要求很高,在不同的环境下要根据上位机图像来调节阀值,可以用上位机的二值化阀值来改程序里面的阀值设置

if(MID > (Expect +15))
{
Flag_Qian=0;Flag_Hou=0;Flag_Left=0;Flag_Right=1;
}
else if(MID < (Expect -15))
{
Flag_Qian=0;Flag_Hou=0;Flag_Left=1;Flag_Right=0;
}
else
{
Flag_Qian=0;Flag_Hou=0;Flag_Left=0;Flag_Right=0;
}
根据黑线来转弯的程序是直接根据蓝牙控制来写的,不过有一点不好的就是转弯速度有点快,如果想更平稳的话可以自己改一下转弯的速度



视频地址:http://player.youku.com/player.php/sid/XMTM0NTQwMjEyNA==/v.swf

这是调试的时候的视频,因为在宿舍自己搭的环境,灯光不是很好,上位机看到的几乎都是黑色,而且画的跑道弯道有点急

调整了阀值和加了一些灯光在弯道部分之后就好多了


视频地址:http://player.youku.com/player.php/sid/XMTM0NTQwMjEyMA==/v.swf

可以看到在光线好的那部分沿轨迹跑还是不错的,但是后面部分光线有点问题,如果在程序中加入自适应曝光的话在某些情况下会影响平衡,所以 还是自己手动调节阀值比较好。

最后附上程序

CCD检测在adc.c里

阀值,中线预值设置在sys.h里 

循迹.zip

飞思卡尔CCD循迹的程序

小车主板测试程序.zip

可以参考这个程序


助工
2015-10-13 22:10:43     打赏
9楼

10-13更新:  遥杆控制小车


之前觉得游戏遥杆好像很好玩的样子,买回来发现也就是一个电位器而已


既然都买回来了,那就装上玩玩呗,不然多无聊啊


摇杆。。。苦逼的我只能用洞洞板来做转接板。。焊得好累。。


用蓝牙来连接小车,方便,快捷~ 这蓝牙长这幅样子我也不想的,只是之前的底版被我弄烧了,结果我发现主要模块还能用,就拆下来了

当遥杆处于直立状态时,阻值是最大阻值的一半,当按到x正方向最大值时阻值为0,x负方向按到底时阻值最大,y方向同。

这样我们就可以用stm32上的adc来读取遥杆通电后xy的电压值,就可以得到遥杆的状态了。



根据小车源程序的蓝牙控制的代码来编写控制端的代码,这里用的是PA0和PA1要读取XY方向的值。

哦。对了,记得把发送端的蓝牙调成蓝牙主模式连接模式也要注意一下

遥杆在z方向还有一个按键,所以我就加了一个按下这个按键电机停转的功能



小车的代码里面有一个Flag_Stop标志位,当Flag_Stop == 1时小车就倒下了~


视频如下:


视频地址:http://player.youku.com/player.php/sid/XMTM1OTEwODg0MA==/v.swf


视频地址:http://player.youku.com/player.php/sid/XMTM1OTEwOTI1Ng==/v.swf


助工
2015-10-17 10:55:59     打赏
10楼

 蓝牙的app又更新了,最近终于抽出时间试了一下

 群文件里面也有下载

不知道是我的手机问题还是app本身bug,连上小车之后还是现实正在连接。。。

要点一下屏幕才ok

还有要注意就是点了3次低速档之后电机是关了,但是只能点3次高速档重新开启,按小车上的按键是没有用的

小车上的oled也是不开启的

还有就是想用这个app记得先把群里面


这个下了,烧hex进小车里...


共11条 1/2 1 2 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]