原创 【博客大赛】舵机、超声波的调试笔记--原来我还不够认真

2013-7-16 19:13 1175 19 21 分类: MCU/ 嵌入式 文集: hardware

    由于项目需要,老大叫我这几天用STC12C5616AD这个增强型51单片机来调试舵机和超声波。

1、第一天:

我直接看了官方datasheet后就做了个最小系统,把所有引脚都引出来了,就开始写程序。期间发生一个小波折,我把复位引脚按照以前做单片机系统的习惯,直接接电容到地,然后接上拉电阻到电源;后来发现程序下不进去,确定串口没问题后,检查原理图。好几分钟后,发现这款单片机的复位引脚居然是高电平复位的!好吧,我错啦。把电阻电容位置调换后,单片机正常了。由于好久没写程序了,特别是51的,有些陌生。于是,硬是用了一天,初步把程序写出来了,能够产生PWM波,并且占空比是可调的。虽然用了一天,但是,感觉还是不错的。

2、第二天

初步了解了舵机的控制原理:控制信号由接收机的通道进入信号调制芯片,获得直流偏置电压。它内部有一个基准电路,产生周期为20ms,宽度为1.5ms的基准信号,将获得的直流偏置电压与电位器的电压比较,获得电压差输出。最后,电压差的正负输出到电机驱动芯片决定电机的正反转。当电机转速一定时,通过级联减速齿轮带动电位器旋转,使得电压差为0,电机停止转动。当然我们可以不用去了解它的具体工作原理,知道它的控制原理就够了。就象我们使用晶体管一样,知道可以拿它来做开关管或放大管就行了,至于管内的电子具体怎么流动是可以完全不用去考虑的。

    也就是说控制舵机转动0度到180度,只需给2.5%~12.5% 的占空比的PWM波即可。由于单片机内部有PWM模块,所以很方便地设置寄存器就可以改变占空比。程序下到单片机后,舵机动起来了。但是很疑惑的是它并没有按照我设定的角度去转动,是胡乱转动的。我首先检查程序有没有问题,用一个多小时重现审阅资料和程序,还是没发现程序有什么不妥。然后检查硬件,一个单纯的最小系统,没有问题。然后我突然看到资料上说IO口用作强推挽输出时要加个限流电阻,因为整个单片机芯片全部电流不得超过55mA,范围在1k~10k之间。于是我急着解决问题,想都没想就加了个10k的电阻。重新上电,舵机还是存在问题。断开舵机,用示波器观测输出波形,波形是对的,完完全全就是要求的占空比的PWM波。我很不明白。我都按控制原理去写出要求的波形了,为什么舵机还是不受控制?最终纠结了一天。。

3、第三天

我上网查阅资料,希望可以找到类似的问题,遗憾的是,并没有找到。没办法,我只能继续寻找。一上午未果,我只好把超声波的程序给写了,很顺利,马上就出来结果了。下午,我请旁边同学帮我分析,他用CPLD控制舵机是没有问题的。他首先一行行地检查我程序,然后没找出问题;用示波器观测,波形是对的。但是,他发现舵机转动的时候,波形出现了严重的干扰,接着,单片机奇怪地复位了。这不是正常现象。一看我的供电(我用直流稳压电流给单片机和舵机供电),就意识到,应该是供电的问题。他说,舵机运动产生的噪声蛮大,必须做好电容滤波和单独供电的工作。我释然!
4、第四天

上午,老大画的板子到了,然后我跟他说,舵机和单片机必须单独供电,尽可能地降低来自舵机的噪声。他说, 你怎么不早说,我板子都打样回来了。。。是的,又是我的错,我应该早点检查出问题所在的。老大又问:能不能加个电容解决这问题?我当时就固执地认为必须单独供电才可减小干扰,所以就口快的回答“不行”,老大问我试过没,我说没有。然后他就批评我了,“没有试过你就回答我说不行,什么样的态度啊”。。。我当时那个傻啊。。。接着,老大加上了一个100uF电解电容,问题依旧。然后再加上一个大电容、一个电感和一个小容量独石电容后,问题解决了。

    是的,之前我还以为必须改变板子,单独供电才行。然而,老大用事实告诉我,什么事情要真正验证过方可下结论,切勿浮躁!

PARTNER CONTENT

文章评论2条评论)

登录后参与讨论

345002072_353389109 2013-3-26 22:07

您说的很对,实践测量和理论计算缺一不可。我们就是看示波器后的波形才发现复位的。

用户478987 2013-1-28 23:27

真的很佩服你们啊. 尤其是最后的总结:"是的,之前我还以为必须改变板子,单独供电才行。然而,老大用事实告诉我,什么事情要真正验证过方可下结论,切勿浮躁!"  

     有示波器,怎么就不观察一下电源处理后的波形啊,看着可以就行了吗? 

    要是波形还不怎么好,还要换其他参数的电容电感试试的,难道随手加上去的这些元件就是合适的吗? 

     电子设计一个是理论计算,一个是实践测量,不是想当然的.

wxg1988 2012-10-26 23:17

看看哪个可以感动下

用户403664 2012-10-26 15:43

视频密码还是 ouryk

用户403664 2012-10-26 15:42

密码是虾米,好想看看
相关推荐阅读
啊左不是蜗牛 2015-01-28 09:21
【博客大赛】那样的人生,看不穿
         昨晚11点跟PM姐姐聊天,问她今晚要不要加班,她回:刚刚开发哥哥陪她出来打的。。。我以为我十点半从实验室回去已经够晚了。。我脸红了。        我问她为什么不早点回去...
啊左不是蜗牛 2015-01-13 19:41
【智能手机】三个观点说说国产手机未来
在此篇文章之前还有一个各大手机品牌的总结,请点击查看。 智能手机之论英雄出处      谈手机之前换个角度,类比一下PC领域。 PC领域毛利最高的时候,国产PC一直混在低端。随着时代发...
啊左不是蜗牛 2015-01-09 17:56
【智能手机】论英雄出处
我认为,如果你不知道对手的底细,那么你就很难战胜对手。知己知彼,百战百胜。所以,我简单地说说我对这几家手机品牌的看法。个人之见,欢迎讨论。   苹果: 1976年成立,在乔布斯这样的天...
啊左不是蜗牛 2014-11-19 13:48
【博客大赛】蜗牛求职记之华为篇
1、前言说明          蜗牛是电赛出身,本科做硬件嵌入式,画板子和写C程序,然后研究生阶段是转战android,但是由于项目涉及到硬件,导师项目众多,小伙伴少,于是我也负责部分st...
啊左不是蜗牛 2014-08-16 14:38
以另一种位图的思想来解决一道OJ题目
前言: 以前所接触到的位图的思想都是以1位的形式去存储某个数出现的次数是1次还是0次。常见的例子不外乎在《编程珠玑》上的开篇例子里,1千万个数的排序统计,用1.25M的内存空间就可以达到遍历一...
啊左不是蜗牛 2014-08-15 11:57
Android 笔记之 listview 性能优化
列表显示需要三个元素, (1)listview 视图,用来显示列表的View ; (2)适配器,用来把数据映射到listView上面的 (3)数据,具体将被映射的数据,包括字符串,图片...
EE直播间
更多
我要评论
2
19
关闭 站长推荐上一条 /3 下一条