基于5 1单片机的自调平云台设计

2017-03-02 03:24
化工设计通讯 2017年10期
关键词:开发板端口时钟

韩 峰

(大庆油田化工有限公司东昊分公司表活剂厂,黑龙江大庆 163000)

基于5 1单片机的自调平云台设计

韩 峰

(大庆油田化工有限公司东昊分公司表活剂厂,黑龙江大庆 163000)

平台的可控性体现在如果将感应模块与平台分离后,可单独进行角度手控调整,从而根据显示数据获得所需求角度的平面,满足于快速搭建特定倾角平台。由此二者组合分离后可获得极多数条件下对特定平面角度的需求,并可在此平台下搭建移动组件,最终通过惯性补偿可实现移动水平平面的情况。

IIC串行总线;MPU-6050;LCD1602

1 主控制系统硬件设计

1.1 STC90C51S单片机

本次设计所应用的单片机芯片是宏晶公司研制生产的STC90C51下的一款单片机。STC90C516RD+系列单片机是宏晶科技生产的单时钟/机器周期(1T)的单片机,是高速/低功耗/超强抗干扰的新一代8051系列的单片机,指令代码完全可以兼容传统8051,但速度快8~12倍。12时钟/机器周期和6时钟/机器周期可任意选择,内部集成MAX810专用复位电路,时钟频率在12MHz以下时,复位脚可直接接地。

该单片机便于用于实验等方面性能出众并且其开发板极对于本次设计的研发其便捷。该单片机I/O端口数量满足本次IIC串行总线所需端口,且对于LCD1602显示器拥有指定的接口。

1.2 Ly-51S开发板

这次搭载STC90C51S单片机芯片的是Ly-51S单片机开发板。这个种类的开发板搭载的单位模块以独立模块式结构偏多。由于除电源外绝大多数模块为独立模块,极大地提高了该开发板的灵活程度,以及在多个模块相互配合时不会产生影响。信号线之间处于初始悬空状态,保证了从机信号接受不会相互干扰。

1.3 MPU-6050模块兼IIC协议

MPU-6050为全世界最完善的整合性6轴加速度运动运算模块,相对于多种模块的配合,减少了组合三轴陀螺仪与加速器的轴间误差的误差,降低了极大的产品外围面积。MPU-6050集合而成三轴陀螺仪、三轴加速器,而且包括根据两个IIC串行总线端口连接从机品牌的多轴加速器、磁力感应器、或其他传感器的数位运动处理硬件加速引擎,本质上根据IIC端口以一对一的数据走向的形式,向主机端输出全套的九轴处理运算。

1.4 IIC协议简介

IIC总线有且仅有两根双向信号线。一根是数据线SDA,另一根是时钟线SCL。

IIC总线通过一个上拉电阻接电源的正极。故此,在IIC总线空闲时,SDA与SCL均为高电平。并且由于是串行总线的缘故,当连接到IIC总线上的任意一个串行模块输出低电平时都会导致SDA和SCL的信号变为低电平。

为了保证串行线上的数据读取无误,每一个连接在总线上的模块都有一个独自的寄存和接收地址。所以当主机想要调取外置模块的数据时需要该模块特定的寄存地址,当然因为SDA是双向数据线所以外置模块也可以读取主机数据,这个关系是相对的。

2 软件的总体设计

本次设计的软件设计主要部分为:

(1)MPU-6050陀螺仪地址的定义。

(2)MPU-6050陀螺仪与单片机之间的IIC通讯。

(3)单片机控制LCD1602液晶显示器。

(4)单片机对双路舵机发送PWM波。

本设计使用的程序开发、调试软件为Keil uVision,这个开发软件极大包含了软件开发所需的各项。Keil编译软件是现今运用最为广泛的开发编绘单片机的一类软件,这点可以从这一段时间内各生产厂商对其的认可以及大规模使用得出。运行 Keil 软件需要 Pentium 或以上的 CPU,16MB或更多RAM、20M 以上空闲的硬盘空间、WIN98、NT、WIN2000、WINXP等操作系统。集成了项目管理器、C/C++编译器、编译器、汇编器、调试器和连接器,因此支持C语言及汇编语言。

3 系统调试

3.1 软件系统调试

软件后期的调试在Keil uVision开发软件环境中进行进一步的调试。当主体框架无误的时候。软件调试大多出现在语句矛盾、语法错误以及出现BUG的情况。调试方式的从低级的语法错误开始逐层更改,最后在主体语句循环无误的情况下进行模拟调试。当出现编译通过但程序无法按照既定计划执行的时候,需要检查定义的地址,引脚时钟长短之类的设定型错误的发生。因为该类软件问题属于主观错误,调试软件无法进行客观的识别和判断。最后对调试成功的软件进行注释以及完善。

3.2 硬件系统调试

硬件系统的调试过程需要考虑多方面因素。当在保证软件能够正常运行的情况下首当其冲的应该确定所有硬件没有物理性损伤,当出现物理性损伤后尽可能单独测试其独立模块,减少其对整体系统的影响以及干扰。其中需要确定,MPU-6050在正确供电后是否可以进行端口的信号传输;舵机在给定测试脉冲时是否会到达指定位置,并不发生抖动;LCD1602液晶显示器能否在没有坏点的情况显示字符,在调节电位器之后是否可以清晰的显示出对比度;组件在黏合过程中是否会减少其自由度以及是否会出现死点等情况。当对每个独立硬件调试确认无误之后,对各个零部件进行总体组装后开始整体硬件调试。此时,注意各个模块之间的端口接线是否复合软件设定的端口,并在整体硬件系统运行的过程中进行极限值测定,并且在多次运行后保证系统不会崩溃。当多次调试后硬性吻合软件所需硬件基础即可完成调试。

[1] 张秀关.单片机与计算机串口通信[M].北京:电子工业出版社,2013.

Design of Self-adjusting Pan/Tilt Head Based on 51 Single Chip Microcomputer

Han Feng

The controllable nature of the platform now if the sensor module and the platform after separation,can be a separate angle manual adjustment.Thereby obtaining a plane of the desired angle from the display data.Satisfying the rapid construction of a specific tilt platform.The combination of the two can be obtained after the maximum number of conditions under the conditions of a specific plane angle.And in this platform to build mobile components,and ultimately through the inertia compensation can be achieved by moving the level of the plane.

IIC serial bus;MPU-6050;LCD1602

TN764

B

1003–6490(2017)10–0246–01

2017–07–25

韩峰(1964—),男,黑龙江大庆人,高级工程师,主要从事仪表自动化专业。

猜你喜欢
开发板端口时钟
别样的“时钟”
一种端口故障的解决方案
古代的时钟
基于STM32H7的FDCAN通信系统设计与实现∗
硬件解耦三端口变换器的软开关分析与仿真
多按键情况下,单片机端口不足的解决方法
有趣的时钟
浅析单片机开发板的设计与制作
时钟会开“花”
ARM宣布mbed Enabled Freescale FRDM—K64F开发板通过微软认证