我的账户
中国电子DIY

科技成就未来

亲爱的游客,欢迎!

已有账号,请

如尚未注册?

自制微信刷步摇摆机

[复制链接]
原创 aa阿瓜 发表于 2016-11-17 18:55:53 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
本帖最后由 aa阿瓜 于 2016-11-18 22:37 编辑

第一次在这里分享我的作品,不是什么高级的东西,不过也确实花费了我一点心思。
顺便想吐槽一下,明明我是好久偶尔才登陆一次网站,然而每次登录都发现我的积分下载币多了好多,之前也没怎么发过帖子,难不成是有人拿我的号来刷评论?

已更新视频
可能会有很多人不理解我做这个东西的意义何在。
如果做这个刷步机纯粹是为了占领别人的封面,那确实太愚蠢了。
我们DIY一个东西,更多是为了享受制作的过程。
对我而言,我可以接触到未曾接触过的机械结构和硬件模块。
同时更多是为了学习stm32单片机,增加调试经验。
至于为什么选择做摇摆机,答,好玩。
原文:

作者:广大电协阿瓜
日期:2016/11/17

1.png       
                                    实物图1   

   2.png

                               实物图2


下面我将介绍我做这台机器的几个主要过程。

1.画概念图
       这个idea好像是我在晚上入睡前思考人生的黄金时间中想到的,简单的把手机放在一个摆篮里,用步进电机带动摆篮来回摆动,模拟人正常走路时手机采集重力变化的姿态,简约的东西既能充当刷步机,又能起摆饰作用(至少我是这么认为的)。
   23.png 3.png 4.png
      上图是用Solidworks 机械绘图软件画的3D模型图,我本人是电子相关专业,solidworks是自学的,多一门技能多一门手艺哈。机器的支撑骨架用的是2020铝型材,所看到的平面板用的都是亚克力板,步进电机转轴通过圆柱形联轴器跟粗螺栓相连,然后整个摆篮就通过那个四只脚的东西(自己画的零件,用3d打印机打印)挂在螺栓上面(里面有轴承,减小摩擦),黄色的零件是万向联轴器,用来连接金属杆和亚克力板,后来在板子四周加装了角铁,保证手机不会飞出(一开始没有画是因为还没想到好办法),摆篮下面预留了一定的空间,保证其摆起来不会有磕碰。(摆篮上面放的是魅族MX4!逼不逼真!)(ps:加下划线的是所用到的材料和机械零件,仅供参考)
      写到这里才想起我应该上tb搜索一下,然后都千篇一律长这样,看了下介绍,
原理我想大概是摇篮下挂一个配重的磁铁,底座电池供电给内部线圈产生磁场,给摇篮一个初始动力后,配重磁铁和线圈相互吸引来保持转动惯性。好吧我承认这种方案比我做的要先进,没有噪音,而且也更加精致小巧,但是,我的看起来更加高大上啊!

5.png


2.组装机器
      像铝型材、联轴器、金属杆、角铁、轴承这些金属零件可直接上淘宝买,然后亚克力板是之前做的项目的余料,也是在淘宝上定制的,然后那个四只脚的零件则是在学校实验室里的3D打印机打印得到。这是组装完成后的样子,没有任何硬件电路(除了步进电机)(同学送的),组装过程没有拍太多照片。
6.png



3.绘制硬件连接原理图
3.1 stm32f103c8t6核心板
在淘宝买的模块,因为flash被锁被大量吐槽,我也是尝试了好久才能正常使用。
7.png          8.png        9.png



3.2 A4988步进电机驱动模块
第一次使用这个模块(以前用的是TB6560),因为便宜。但便宜有便宜的缺点,TB6560驱动模块使用起来感觉特别的顺,即使相位引脚乱接都能照样能顺畅地转动;但是这个A4988的使用效果就差一点了,一是相位标法跟正常不同,这里的2B2A应该是正常的A+A-1A1B是正常的B+B-,而且相位没接对的话电机会一直堵转并发出难听的噪声,我摸索了很久才能让它正常转动;其次是我在测试不同频率下的转速时内部线圈有时会跟不上节拍而出现堵转的现象,虽然TB6560有时也会这样,但也只是转得不顺畅而已,不会完全堵转;再其次是只能通过MS1MS2MS3调节细分步数,而且要手焊而不是用拨码开关;最后一点,我想也是造成使用效果较差的一点,就是驱动电路和控制电路没有用光耦隔离,是共地的!难怪用起来总感觉那么“抖“,在电机转动的时候数码管和指示灯总是会闪烁!
11.png 10.png

3.3数码管驱动电路
使用6位共阳数码管(但我只用了5位,最大计数99999步),正端用NPN三极管9013驱动,IO输出低电平NPN不导通时有效;负端用ULN2803 八位达林顿晶体管来驱动,因为有反相,所以同样是IO输出高电平有效。
12.png

3.4 按键蜂鸣器驱动电路
按键IO口配置为上拉输入,然后配置下降沿触发中断。
蜂鸣器同样是用NPN三极管来驱动(后来因为太吵而舍弃)
13.png
3.5 霍尔传感器模块
这是网上搜的原理图,原理很简单。霍尔传感器输出信号通过LM393比较器和参考电压比较,大于则输出高电平,小于则输出低电平。实际使用时我把LM39323脚对调了,因为要用负跳变触发的外部中断。
14.png

3.6 DC12VDC5V  LM2596稳压模块
直接上淘宝买的模块,比自己做更有保障。(25762596用法相同,只是2596的开关频率更高,工作效率高一些)

15.png 16.png



4.测试硬件电路  
这是我做这部机器最关键、也是最困难的部分,由于刚刚入门stm32(之前学的51arduino),如果直接搭建好所有电路再一个个调试我肯定吃不消,所以只好先单独连接各个部分的硬件,如数码管、蜂鸣器、按键、步进电机,并测试好各部分的代码,确定无误后再将所有电路和代码进行合并。因为这是我第一次使用stm32作为核心控制器的作品,最初我甚至花了很长时间在解决烧录不进程序的问题上,然后又被各种问题像IO的配置、定时器的频率、步进电机的节拍时序困扰了很久,导致调试的进度非常缓慢。


5.搭建硬件电路,测试总代码  
连接所有硬件电路(飞线有点凌乱),测试过程就不详细写了。
18.png 17.png
20.png 19.png

下面是在调试过程中遇到的问题及解决办法:
(1) 一开始在淘宝买的stm32f103c8t6核心板一直烧不进程序,看卖家才知道原来是核心板在出厂时默认烧录了flash保护程序,要用swd下载方式解锁了才行。
(2) PB5一直输出高电平,不受单片机控制 。解除jtag绑定,正常。
(3) 我用flymcu烧录器来下载程序,烧录是要手动切换boot0电平并复位的,然后下载成功后不知什么鬼程序运行不正常,因为经验不足一直以为是程序问题困扰了好久,后来才发现要把boot0打回低电平并复位才行,被烧录器上面的“编程后执行”选项给坑了,烧录后只会运行main函数的程序,其它程序如定时器中断函数并不会执行!
(4) 定时器问题,我看正点原子计算定时频率公式是:72M÷时钟分频系数PSC÷自动重装载值ARR ,但是实际运行时频率(示波器测量)却比计算值小9倍,不解。
(5) 应该同样是定时器的定时问题,导致在用定时器给蜂鸣器报警延时和控制步进电机转动节拍时效果一直不理想。后来只好舍弃蜂鸣器,步进电机改用便宜的A4988驱动模块来控制(一开始用的uln2003)。
(6) 最初想着完全用定时器来控制摆篮摆动的频率,但是有两个严峻的问题。一是摆动的频率难以测量,虽然通过实测可知不管摆动幅度多大这个频率都是固定的(至少大概相等),但是要用定时器准确模拟出这个频率不大可能,多多少少会存在误差。这时候我偶然想起我在很久之前做的霍尔传感器模块,将霍尔传感器固定在一侧,并在摆篮上粘一磁铁,这样摆篮经过传感器被检测到信号后,单片机才控制电机转动不就行了!同时还能用来计步数!二是难以确定电机转动的速度和时间,转得太快摆得太高,转得太慢又摆不起来,而且转动时间跟摆篮的摇摆不同步的话又会导致整个机身剧烈晃动。后来我的解决办法是不将电机转轴跟联轴器完全固定,让它们有一定相对摩擦,然后利用这些摩擦来让摆篮摆动。(这样带来的问题是转久之后摆篮容易脱落,后来我又想到的办法是用一个橡皮筋把它们给套住,这是后话)
(7) 在调试时发现即使磁铁离霍尔传感器远远的,一旦我把双手靠近它也会检测到!然后我转了下精密电位器把灵敏度降低了才不会被检测到,莫非是当时灵敏度太高连我的人体静电也被它检测到了?!


6.正常使用测试
经过多次修改转速和转动频率后,现在摆动幅度基本合适,而且数码管显示的计数值能跟微信运动上的基本吻合,哈哈!但是现在还是存在一些问题,比如摆动起来惯性有时还是有点大,整个机器也跟着左右轻微晃动,我已经在底板上粘了防滑垫了还是这样;因为电机转轴跟联轴器没有完全固定,摆久了摆篮容易脱落,还好摆篮是稳稳地跳出来的,不然手机就惨了。最后附一段使用视频,看官们请轻喷。

7.最最后再附上我的高中学霸同桌(现在上海交大巴黎学院)对小球(摆篮)进行单摆运动,从不同高度下摆的摆动周期的计算过程。
21.png 22.png

然后我简单总结一下(反正我是看不懂):
忽略空气阻力,θ为摆动夹角,ω为小球角速度,R为杆的长度,g为重力加速度
24.png
因为摆篮的摆动幅度肯定要足够大才能被手机检测到,所以可以忽略第一种情况而只看第二种情况,因此可以得出这么个结论:
摆篮的摆动频率只跟杆长有关,而跟摆动幅度基本无关,所以别指望这台摇摆机能够以不同的步速来刷步了!


全文完。

最后附上pdf格式原文和作品的源程序(百度云,免下载币),欢迎对作品提出意见!
链接:http://pan.baidu.com/s/1jHTb5P0 密码:urec


参与人数 7下载币 +35 刀币 +58 收起 理由
hxrong + 5 + 4 支持DIY精神!
苗条的猩猩 + 4 支持DIY精神!
老鼠 + 10 + 10 很给力!
疯爱 + 5 支持DIY精神!
diyhome + 5 + 10 原创内容
黎明之光 + 5 + 15 赞一个!
看门查水表 + 10 + 10 支持DIY精神!

查看全部评分总评分 : 下载币 +35 刀币 +58

精彩评论21

明月几时有 发表于 2018-5-17 09:37:42 | 显示全部楼层
有理论依据 有实际结果  难得的好贴
回复

使用道具 举报

凶恶自己人 发表于 2018-5-5 16:51:00 | 显示全部楼层
这个创意有启发,谢谢。
回复

使用道具 举报

123qweasdzxc 发表于 2018-5-3 19:28:36 | 显示全部楼层

暂时用不到,但还是赞个
回复

使用道具 举报

无心戏命 发表于 2018-5-3 09:15:04 | 显示全部楼层
优秀的一批,666+666
回复

使用道具 举报

DSWW37 发表于 2018-3-29 15:53:35 | 显示全部楼层
                        这才叫好贴
回复

使用道具 举报

swordshrimp 发表于 2018-1-23 18:15:00 | 显示全部楼层
哈哈 这个 以后就可以在家里走几万步了
回复

使用道具 举报

zhoucl123 发表于 2016-12-24 22:22:02 | 显示全部楼层
cmh_love 发表于 2016-11-22 11:14
看了以后感觉东西真心不错,但是为了打死一只苍蝇而研究出一个专门的核武器

我的天啊,,,,学文学的吧,,,,说话那么有艺术感。。。
回复

使用道具 举报

魏1472 发表于 2016-12-24 21:28:01 | 显示全部楼层
创意也是没谁了  懒人的福利
回复

使用道具 举报

2015010644 发表于 2016-12-23 15:25:55 | 显示全部楼层
赞一个
主要是学stm32单片机编程
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关注0

粉丝1

帖子2

发布主题
最新发布
推荐阅读
关注我们
中国电子DIY官方微信

客服电话:000-000-0000

客服邮箱:776513803@qq.com

周一至周五 9:00-18:00

公司地址:深圳市南山区美丽湾大厦B座

Powered by Discuz! X3.4@ 2001-2013 Comsenz Inc.