首先说一下系统硬件选型:
控制:三星 odroid U3 开发板。搭载ARM下的移动ubuntu14.04系统。用于信号的采集和处理,输出。
驱动板:Arduino Mega 2560 用于接受控制信号,输出高低电平。
执行器:实验室编制的气动肌肉
传感器:JY61 六轴加速度计陀螺仪传感器,基于MPU6050,自带卡尔曼滤波功能
具体结构: 护臂+气动肌肉+手套,构成一个整体
首先进行气动肌肉的制造,一开始的气动肌肉是圆柱形,跟人体的贴合度不够,如图
希望能将其做成圆弧形,在实验室阿穆的帮助下,有了STL文件,第一次由于贴合太紧,第二次改进后打印可以使用。
与阿穆bro的对话...画的草图真的抽象..
但是埃及大兄弟太厉害了,设计的非常精确,效果如图。
打印出来之后如下
效果还是很满意的,先打印了三对,用胶密封后制得气动肌肉。之后用魔术贴固定在护臂上,如图
用新换的充电器(万能的淘宝),连接开发板与传感器,Arduino,运行上一篇提到的程序,更改完端口的名称后,完美运行。(吹一波python的跨平台性),效果如下:
正常运行。
阶段小结:
系统框图:
增加了Arduino作为驱动板,输出高低电平控制电磁阀来控制气动肌肉的的开闭。
编写了开发板与Arduino的通信以及Arduino的驱动程序
硬件设计:
重新设计了护臂的形式,由固定护臂+气动肌肉+手套构成,手套与护臂间通过魔术贴连接
肌肉制造:
软件移植:
由于开发板是基于ARM的移动Ubuntu系统,用之前的C++程序移植后各种报错,因此用python重写了程序,并且增加了校验位来提高传输的准确性。经测试,在移植到开发板后成果运行。
第一阶段已完成项目的初步目标。
接下来要做的是 1 优化硬件结构,包括移植电源,加固肌肉等
2 优化处理程序,也就是本项目的核心,即分辨出震颤与日常运动的区别,可能会涉及到数字信号处理的滤波算法,小波变换等知识,老师推荐的是使用FIR滤波算法来实现带通滤波。
3 尝试不同的控制算法。