0 引言
采用单片机为核心设计的云台控制器在监控场合能实现控制摄像机进行大范围、宽角度的移动,以使摄像机能够达到接近360°全景式摄像,且其在经济性、灵活性、扩展性和可维护性等方面都具有独特的优势。
1 系统总体结构
系统由以下几部分构成:①单片机:设计的核心,在软件的配合下实现对键盘所输入信息的识别,根据输入信息向云台中的步进电机发出指令,使其实现正/ 反转、速度控制、程序控制等功能,并将步进电机的转速通过数码管显示出来;②步进电机及驱动:负责云台系统在竖直和水平两个方向上的转动,是系统的执行部件;③键盘:外部信息的输入器件,是控制人员指挥云台系统工作的重要组成部分; ④显示器件:将步进电机的实时转速显示出来,以便控制人员根据转速来确定对云台的控制策略。
2 系统硬件设计
硬件电路按系统功能划分为步进电机及其驱动模块、单片机及其外围电路、键盘及显示电路共三部分,系统硬件功能框图如图一所示。
2.1 步进电机控制及驱动模块的选择
驱动器接收到脉冲信号之后,驱动步进电机按设定的方向转动一个固定的角度,它的旋转是以固定的角度一步步运行的。可通过控制脉冲个数来控制角位移量,达到准确定位的目的;同时可通过控制脉冲频率来控制电机转动的速度和加速度,达到调速的目的。所选步进电机为两台混合式步进电机57BYG250C,具有两相/ 四相运行能力,四拍工作时步距角为1.8°,八拍为0.9°。步进电机驱动模块型号为HB202A,具备4/8 拍转换控制信号、脱机(FREE)控制信号、输入信号光电隔离等功能。设计中增加了一个脱机控制键,在出现故障或调试时将两台电机置于脱机状态,可手工调节步进电机。脱机控制键直接与单片机INT0 相接,设INT0 为最高优先级,以便在故障时能迅速实现脱机控制。由于不经过8279 而直接接在单片机上,则必须设置键盘去抖动电路,以免使单片机产生误操作。
2.2 键盘及显示电路设计
键盘及显示电路采用INTEL8279 来实现。键盘采用N键循回方式,显示为8 位左端送入。8279 外接2*8 键盘和八位显示器,采用编码扫描方式。8279 的IRQ 和单片机的INT1相接,只要有键按下,就会申请中断。当单片机外接12M 晶振时,ALE 为2M,而其与CLK 相连,所以其分频命令字为34H。通过8279 所扩展的按键共16 个,8 个负责两个方向上的步进电机的正反转,8 个是功能键,分别负责步进电机的加减速、程序控制、步进电机的限位开关。
3 系统软件设计
系统的软件主要由初始化程序、键盘程序、速度控制程序、转速检测及显示程序组成。除初始化程序外,其余程序均采用中断工作方式,提高了CPU 的利用率。
3.1 系统初始化程序设计
先对单片机各中断源进行初始化,使用五个中断源:INT0、INT1、T0、T1、T2,INT0、T0、T1 为高优先级,INT1、T2 为低优先级。INT0 申请中断,则程序立即使步进电机进入脱机控制程序,步进电机不再受单片机的控制,且是电平触发,单片机始终执行脱机程序,直至外部触发信号由操作人员手工撤销,系统才恢复正常工作。后设置T0、T1、T2 的工作方式,并写入计数处置,开启这几个中断源的允许位,打开CPU 中断。[page]
3.2 键盘程序的设计
键盘键按下后产生中断申请,单片机响应中断后,开始执行中断程序。从8279 内部将产生的键值读出,并根据键值来执行相应的程序。CPU 接收到该信息后,并不立即动作。为保证步进电机速度控制的稳定性,先保存该键值所对应的命令,在T0/T1 到达所设定的计数值之后,按一定的速度需要输出脉冲时,再将该信息送至步进电机。
3.3 步进电机的速度控制软件设计
改变驱动模块CP 信号的频率来改变步进电机的转速,改变CP 信号的频率可以通过定时/ 计数器来实现。先给定时/ 计数器装载初置,后使其开始运行,到达规定的时间后执行中断程序,此时可将产生CP 信号的程序放在此中断程序中,就达到了改变步进电机转速的目的。S52 内部的T0 和T1 分别对应了两个步进电机的速度控制,其工作过程如图二所示。
3.4 转速检测及显示软件设计
采用定时计数法,在一定的时间内对单片机发送给步进电机的步进脉冲进行计数。设单片机每50ms 检测一次向步进电机所发出脉冲的个数N,N 与转速之间有如下关系:
只要将检测到的脉冲数N 乘以3,就可以得到每分钟的转速。50ms 的定时由S52 内部的第三个定时/ 计数器T2 来实现。
4 结束语
单片机构成的云台控制器不仅具有控制精度高、控制方式灵活、程序编制简单、功耗低、可靠性高等特点,且某些新型单片机更具有在线编程功能,不需把单片机从工作环境中剥离出来即可进行程序更新,方便了软件的维护,并可根据需要,由预先编制的程序自动对两方向上的驱动电机进行协同控制。
关键字:单片机 运动控制系统
引用地址:
基于单片机实现摄像机运动控制系统的设计
推荐阅读最新更新时间:2024-03-16 12:48
基于STC89C55RD+单片机的LED点阵显示系统的设计
摘要:基于 STC89C55RD+单片机的在应用可编程功能,设计了一个 LED点阵显示系统。该系统采用了上—下位机的结构构建,上位机 PC可通过串行通信接口实现对下位机 LED点阵系统显示内容的控制。下位机以 LED屏的显示电路和单片机控制电路为核心,在没有外扩程序存储器和数据存储器的情况下,直接利用该单片机大容量的数据 flash区,通过在应用可编程功能实现多条信息的实时发布、擦除和修改。 1 引言 在车站、商场、学校等一些需要发布多变的实时信息或进行广告宣传的场所,黑板、纸张或是霓虹灯广告牌这些传统的媒介手段,不论是在显示效果还是可修改性上都已无法满足当前的需求。而 LED点阵显示屏具有耗电省、成本低、寿命长、占用
[家用电子]
单片机学习记录——玩转LED
硬件连接 从电路连接图可以看出,LED 的负极接地,正极通过排阻连接到74573的输出端。 由74573的控制端电压和datasheet可以得出,74573处于跟随状态。 综上,J12的电压的高低控制LED 的亮灭。 在开发板上,通过排线把P0端口和J12相连接。单片机通过控制P0端口的IO状态(高为1,低为0),进而控制LED的亮灭。 软件设计 1 打开keil,新建工程。 2 新建 .c 文件和 .h 文件。把 .c 文件添加至工程。 3 编写程序,注意程序的规范性。 4 编译程序,生成 .hex文件。 /************************************************
[单片机]
单片机会被淘汰吗?单片机现在还有用吗?
我经常会在网上看过一些关于plc会不会被单片机替代,单片机会不会被plc替代的问题。 万一辛辛苦苦学会了的,到时候技术被淘汰了,那就坑大了。 我在单片机这个行业从事了10年开发工作,我感触最深的是这个行业发展越来越好,这块的人才越来越缺,工资也越来越高了。 大概在18年的时候,带过一个产线维修的兄弟,我那时部门正好缺人手,外面也不好招,就打算从公司内部培养一个。 后面挑了个做维修的,因为对公司产品熟悉,有基础,大概带了3个月就能自己开发项目了,那个时候他的工资已经从5000多涨到8000多了。 前段时间联系的时候,他跟我说换了一个工作,工资18K左右。 当时我还有点差异,后来有3个公司管理层问我有没有工程师介绍,我才意识到这个行业
[单片机]
51单片机---Keil C语言
一、数据类型 sbit、sfr、sfr16属于C51的扩展数据类型; 1、sbit:定义可位寻址类型的变量,用于位寻址,从位寻址字节中定义位变量;sbit定义的变量属于特殊功能寄存器类型的位变量,存放在特殊功能寄存器区; sbit的三种形式: sbit 位变量名 = 位地址; sbit 位变量名 = 特殊功能寄存器名 ^ 位位置; sbit 位变量名 = 字节地址 ^ 位位置; 如: sbit P1_0 = P1 ^ 0; sbit P1_1 = P1 ^ 1; sbit P1_2 = P2 ^ 2; 2、sfr/sfr16:分别定义8位和16位的特殊功能寄存器类型的变量,这种类型的变量存放的是硬件的物理地址码; sfr/sfr
[单片机]
51单片机的串口收发通信C语言程序
#include REG52.h #include string.h #include stdio.h #define uchar unsigned char #define uint unsigned int #define ulong unsigned long #define ushort unsigned short #define MAX_DATA_LENGTH 32 typedef struct//定义数据发送包 { uchar head;//包头 uchar length;//数据长度 uchar cmd;/
[单片机]
WINDOWS环境下PC机与单片机的通信
在自动控制系统中,PC机与单片机组成上位机和下位机,其基本构成是:下位机(单片机系统)完成信号检测、A/D转换和简单的控制功能,通过系统总线(如RS-232、RS-485、USB)与上位机(PC机)相连,进行监测、控制,形成主从式结构。下面就上位机和下位机之间目前几种常用的通讯方法作一些介绍。
1、RS-232的串行通讯
在工业控制中,串口是常用的计算机与外部串行设备之间的数据传输通道,由于串行通信方便易行,成本低,且完全能满足要求,所以应用广泛。
1.1、利用VC++的标准通信函数 利用VC++的标准通信函数_inp和_outp可实现串口通信。下面是一个串口初始化的程序: Void init_com (PORT)
[单片机]
RS485串行通信接口电路的总体设计
在电参数仪的设计中,数据采集由单片机AT89C52负责,上位PC机主要负责通信(包括与单片机之间的串行通信和数据的远程通信),以及数据处理等工作。在工作中,单片机需要定时向上位PC机传送大批量的采样数据。通常,主控PC机和由单片机构成的现场数据采集系统相距较远,近则几十米,远则上百米,并且数据传输通道环境比较恶劣,经常有大容量的电器(如电动机,电焊机等)启动或切断。为了保证下位机的数据能高速及时、安全地传送至上位PC机,单片机和PC机之间采用RS485协议的串行通信方式较为合理。 实际应用中,由于大多数普通PC机只有常用的RS232串行通信口,而不具备RS485通信接口。因此,为了实现RS485协议的串行通信,必须在PC机侧配置RS
[应用]
基于C8051F311单片机实现汽车座椅自动控制系统的软硬件设计
引言 随着人们生活水平的提高,对汽车座椅的舒适性要求也越来越高,要求对汽车座椅地调节能够更加简单、方便、快捷。目前,汽车座椅位置的调节多采用基于手动调节方式的机械和电动控制两种方式。汽车座椅位置的调节主要有三个方向,即高度调节、水平位置调节以及座椅靠背倾角的调节。 对于家庭使用的汽车,往往由多个成员驾驶同一辆汽车;当不同的驾驶者坐在同一个座椅时,由于个人的身体差异,所需要的汽车座椅的位置各不相同,需经常调节座椅位置;而目前的大部分汽车座椅没有记忆功能,使同一个人在不同的时间驾驶汽车时,汽车座椅的位置可能被其他成员改变,而需重新调节座椅各个方向位置,比较繁琐。 座椅在汽车内安装时,由于不同汽车的内部空间不相同,座椅在各方向所
[单片机]