硬件电路设计
角度传感器硬件连接图如图1所示,当步进电机带动平衡板倾斜到使角度传感器SCA60C处于水平位置时,Vo端输出+0.5V的模拟电压。传感器SCA60C仅可精确检测到0~90度的角度范围,当平衡板转到使角度传感器与水平面成90度的角度时,此时Vo端输出+5V的模拟电压。在0~90度的倾角范围内,Vo端输出的是正比于倾角大小的+0.5~+5V的模拟电压信号,当平衡板转动到使角度传感器与水平面间的角度从90度到180度的范围变化时,输出端Vo输出的是从+5V依次变化到+0.5V 的模拟电压信号[1][2],因此通过测定传感器SCA60C输出端Vo电压的大小即可确定平衡板与水平面的夹角。
步进电机驱动电路的设计本系统中,我们选择4相5线步进电机,其驱动电路主要由L297+L298组成,该驱动电路集驱动与保护于一体。L297是脉冲分配器,只要步进电机A、B、C、D四项依次连接到J1的1、2、3、4各点,且将剩下的一条线接地,L297就会自动的将输入到端口CW/CCW的脉冲分配给步进电机的各个相序,此时步进电机便可转动[3][4]。控制电机时只需单片机通过I/O口向L297的cw/ccw和clock端发送控制信号即可控制它的转速和正反转。驱动电路原理如下图
系统分为两个工作模式,工作于模式一时,可通过键盘模块预置一个角度,主控制器接收到此信息后,通过控制电
机控制模块来使角度检测模块做出转动动作以使平衡板按输入角度完成倾斜动作。同时,角度传感器输出的模拟量经A/D转换模块转换后送入主控制器,主控制器据此输入判定平衡板是否已倾斜到预置的角度,并据此来控制电机控制模
块,并且主控制器模块通过控制显示模块实时的显示平衡板的倾斜角度。通过按键模块可将系统切换到模式二,模式二的功能是能始终保持平衡板的水平,且能使显示模块显示的内容与平衡板联动,两种工作可通过按键来切换。系统使用c8051f00作为控制核心,
128*64作为显示器,4*4键盘来输入需要预置的角度。程序具有角度预置和自动寻找平衡点两种模式,根据不同需要选择,具有友好人机界面, *** 作简单易懂。
参考资料:http://wenku.baidu.com/link?url=fLL2Ek9INpeO6bV1NpbEv16HY9vG201IGIAQ3U-TdD4Lt-C2C_miOgqcWOS1GSq7mCuUXhviEmQx7K5VuT59UTxKM_IjxCWCW2UA6lBBWVW
普通51用电位器应该好一些,毕竟转的角度和改变的阻值成正比,程序写的时候简单很多,如果使用加速度传感器在0-55度范围内是近似成正比的,如果使用近似算法在0-60度范围内误差会达到1度以上。
而普通51运算浮点数的速度太慢,使用反三角函数计算角度值速度慢的吓人。
你可以自己试试,反正模拟加速度传感器和用电位器用的同样是AD。
加速度传感器还有一中是数字的,比电位器好的是可以不使用AD就能测量角度值。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)