新手做第一个ARDUINO 应用项目
本帖最后由 最帅的老饼 于 2017-9-21 20:23 编辑第一贴---立项
学习ARDUINO已经快一年了,作新手是时候做点事情来迫使自己断续深入学习。一个不错的ARDUINO 应用项目是自家不锈铜大门的遥控开关。
家中的门是八字开关门,想法是两扇门各用一个舵机来用于天、地锁,各用一个步进电机用于开、关门的驱动机。各安装一个按钮用于:
1.单开一扇门(左门)
2.单关一扇门(左门)
3.打开二扇门,同时动作。(左、右门)
4.关闭二扇门,同时动作。(左、右门)
左门上的按钮完成 1和 2 。右门上的按钮完成3 和4 。总的来说是 两个按钮来控制两个舵机和两个步进电机。
以下是家门的图片
PINKWALKMAN 发表于 2017-9-22 08:24
建议不要用裸露的齿轮传动,不好买零件且容易生锈,建议用现成的减速电机结合链条传动好一些;电机功率需要 ...
多谢你的建议!!
同步带和连条后期修理、保养麻烦,被我排除了。
齿轮等这些小零件有足够设备制造,这些零件只要能用不锈钢都用。
悬挂都想好了。
门机已经快好了,近期会上图。 图片要处理到512K以内 本帖最后由 最帅的老饼 于 2017-9-21 20:30 编辑
弘毅 发表于 2017-9-21 14:24
图片要处理到512K以内
谢谢!!............ 弘毅 发表于 2017-9-21 14:24
图片要处理到512K以内
论坛改版后首页图片看不到时间了 门机设计草图。。。。 建议不要用裸露的齿轮传动,不好买零件且容易生锈,建议用现成的减速电机结合链条传动好一些;电机功率需要计算一下,预计200W一个差不多了(要看开门的速度哈),还有主动轮带动门运动时建议该轮子加一个简易悬挂,便于轮子很好的接触地面,毕竟地面不是绝对水平的且门轴不是与地面绝对垂直的,都会有误差。
做的好的话还有很多细节需要考虑,比如:这个电机的控制器需要有限流功能用作门遇到障碍物时能通过限流保护停下来等等细节。
祝你成功。 LZ家的大门很有气派 确实不错的设计! 经验表明,这种大扭矩粗活的地方用步进电机不给力。不如直流减速给力,或者也可以考虑弄个拉绳来驱动门的开关。 我觉得用液压缸泵来开关大门更合适一点。其它案例比如:货车尾板。 这种门用电机驱动有点难。还是用绳子拉吧
舵机的奇怪现象
本帖最后由 最帅的老饼 于 2017-9-23 22:41 编辑作为论坛新手的我今晚上来睇到很多网友的意见。很开心但又很痛苦。因为我每小时才能回复一个贴。
所以我还是先发问求助吧。
今天被个奇怪的问题折腾了一整天,我把下图的舵机安装在门上,但工作不正常。
正常的舵机转动是平滑的转动到指定角度才停止,但它在转动时不是平滑的,是断断续续的转动。
我把电源、Arduino板、电线、程序、舵机都反复检查和更换了,还是不正常。
后来发现舵机的外壳只要与大门接触到就不正常,离开又恢复正常工作。
晕啊!!何解?求助。
本帖最后由 最帅的老饼 于 2017-9-27 20:42 编辑
这几天检查了多次还是找到舵机工作不正常的原因,心一横把舵机的电路板拆了。去某宝买了块两路H桥直流电机驱动板。决定把《舵机驱动》插销方案改为《直流电机驱动》。下面工作要在插销尽头安装个接近开关,用来感应插销位置。 本帖最后由 最帅的老饼 于 2017-9-28 13:56 编辑
步进电机与驱动器
解说:
步进电机
4线步进电机,分别为 A组和 B组,各组间没有正负极之分。要想正反转,可以把其中一组的两线调换。
驱动器
驱动器的接线分别是 PULS+ 、 PULS+ 、DIR+ 、DIR- 、ENBL+ 、ENBL- 、 DC+、 DC-、A+、 A-、 B+、 B- 。
其中 A+、 A-、 B+、 B-与电机的4线连接,用万用表电阻挡找出相连的两条就是一组(A组),另一组(B组)。
DC+、 DC- 步进电机的工作电源。
PULS - 、 DIR- 、 ENBL-这三端连在一起与 Arduino单板共地。
PULS + 、DIR+ 、 ENBL+ 分别连Arduino单板三个针脚。
PULS + 是脉冲接收端,用于接收Arduino 发出的脉冲,用脉冲的快慢来控制步进电机的快慢。
DIR+ 是转向控制,如高电平正转,低电平就反转。
ENBL+ 是使能控制,如低电平是不使能时,步进电机没有力量输出,可接受外力转动电机,相反电机锁死。
通过Arduino 就可以控制电机有如下情况:
1. PULS+ 收到脉冲信号 且 ENBL 开启使能,步进电机产生转动。 (脉冲快慢电机就快慢,DIR高低电平电机就正反转)
2. PULS+ 没有脉冲信号 且 ENBL 开启使能,步进电机不转动但锁死。
3. PULS+ 收到脉冲信号 且 ENBL 不开启使能,步进电机不转动不锁死。
Arduino 中有一个函数是用来发出脉冲信号的,tone ( PIN,Puls, S ); PIN = 针脚号 Puls = 脉冲频率 S = 脉冲时长
用 tone( ) 函数 能很好控制步进电机的转动,有兴趣的朋友可以试验下。
但是,我发现一块Arduino单板, 在同一时间只能一个针脚使用 tone( )函数。
还有, noTone () 函数 好像有问题,不能停止脉冲的输出。
我只能改用 pinMode ( PIN , INPUT ); 来停止针脚脉冲输出。
步进电机控制我就说到这里,请大神们不要私藏多多补充。
本帖最后由 最帅的老饼 于 2017-9-28 22:52 编辑
门机制造中