基于单片机的倾角测量系统设计
图4单片机程序流程图
如图所示,整个程序采用顺序结构。为了加快系统的响应速度和提高计算精度,运算由上位机程序完成,下位机只负责数据采集和数据传输。命令接收子程序通过接收上位机传输的命令进行系统自检、参数修正等等。上位机的命令发送采用间隔10ms反复发送的方式,直到单片机将接收到的命令返回为止。如在1s内单片机没有响应,则设置超时,系统复位单片机。
3.2 上位机软件编程
单片机与上位机的通讯采用Visual C++6.0编写,程序在Windows XP下编译通过。
3.2.1串行通讯的实现
目前串行通讯主要有两种实现方法:一种是利用Windows API函数或是利用Microsoft Visual Studio的ActiveX控件MSComm。利用Windows API函数进行串口编程实现了设备无关性,但此种不但调用了大量的API函数,还涉及到进程调用问题,编程十分复杂繁琐。
本文采用MSComm控件,它间接调用Windows API函数,使编程人员在程序设计的时候不必再考虑复杂的系统函数,使编程工作变得简便,同时又能满足实际情况的工控要求。
实现测量系统与PC机的通讯,首先在程序里嵌入MSComm控件,并设置通讯参数,这里设置波特率为2400bps,8位数据位,无奇偶校验位,接收数据时采用事件驱动方式,响应Oncomm事件,当接收缓冲区中接收到的字符数超过一定值产生缓冲区有字符事件。然后用GetInput()读取缓冲区,用SetInputMode(1)设置输入数据类型为以二进制方式取回数据。这样可以接收ASCII字符‘0’。
3.2.2 倾角的计算
由上位机取得数据后,按下面的修正公式计算:
4.结束语
本测量系统研制成功后,已经过了三个月的海试,工作稳定,达到了预期的设计要求,取得了较好的效果。采用加速度计式的倾斜传感器与传统触点电位器式的倾斜传感器相比,有着无可比拟的优点。如加速度计式的倾斜传感器工作寿命长、精度高、响应速度快等优点。
参考文献
[1]胡汉才 单片机原理及其接口技术 清华大学出版社
[2]宋跃等 存储示波表中常用电气参数测量设计 微计算机信息 2005年21卷 11s期
[3]辉格科技 利用加速度传感器测量倾角 技术文档
[4] VTI Technologies Improved Output Filtering Technical Note 18
[5]龚建伟、熊光明 Visual C++/Turbo C串口通讯编程实践 电子工业出版社
- 由MSP430和CC1100构成的无线传感器网络(08-01)
- 无线传感器网络自组网协议的实现方法(08-01)
- 基于SOC/IP的智能传感器设计研究(09-08)
- 单开关实现小型微处理器系统的双功能(08-10)
- 六大特点助CMOS图像传感器席卷医疗电子应用(11-13)
- 基于FPGA的数字视频转换接口的设计与实现(02-07)