无线货架自动控制系统 第7页
(四) J04P射频接收模块
1 概述
J04P采用独特的超再生电路结构,SMT工艺树脂封装,内含放大整形,输出为数据信号,直接至解码器,使用极为方便,是一种性价比较好的超再生模块。
J04P无信号时输出为零,无需外接天线,接收灵敏度高,采用一定硬度的镀金电感调整接收频点比采用微调电容调频率的接收电路性能稳定,即使强烈振动也不用担心频点偏移,J04P具有较宽的接收带宽,出厂时已调在315M,只要电源馈电及引线没有太大分布参数即可处于正常接收状态,镀金电感约有±5M可调范围。
第三章 软件设计
3.1单片机控制理论
单片机系统是控制电路的核心,它的主要功能是对光电开关(接近开关)信号检测、光电编码器脉冲信号计数、按钮指令响应与串行通讯等。通过检测光电开关信号判断是否有障碍物,保护操作人员与货架设备的安全。响应上位机的串行指令或根据手动按钮执行作业任务,根据检测到的脉冲信号控制货架的两个三相异步电动机,从而可实现货架的左、右两侧轮子的同步,使货架平稳移动。STC89C516RD单片机
STC89系列单片机是MCS-51系列单片机的派生产品,它们在指令系统、硬件结构和片内资源上与标准8052单片机完全兼容。本文选用STC公司的STC89C516RD单片机,其PLCC封装的接口如图3.1所示。STC89C516RD相对于标准8052单片机在功能与性能上均有很大的提高,它的主要性能特点如下:
(1)低功耗
STC89C516RD单片机具有掉电模式、空闲模式与正常工作模式等三种工作模式。在掉电模式下,其功耗小于O.1µA,并且可有外部中断唤醒,适用于电池供电的系统。空闲模式下,功耗小于2mA。正常工作模式下,功耗为4~7mA。功耗指标远小于标准8052系列单片机的(20mA )。
图3.1 STC89C516RD 单片机PLCC封装接口
(2)1K字节片内RAM数据存储器
标准8052系列单片机及片内RAM只有256字节(低128字节可直接或间接寻址;高128字节只可间接寻址)。STC89C516RD单片机另外增加了768字一节的片内扩展RAM,以解决众多技术人员在编程时遇到的RAM资源缺乏的问题。768字一竹的片内扩展RAM(地址:OOOH~2FFH1)与外部扩展RAM地址重叠,单片机可通过软件设置AUXR.1,决定是否使用片内扩展RAM,以防止与外部扩展RAM的冲突。默认情况为使用片内扩展RAM。片内扩展RAM的访问采用间接寻址,可通过“MOVX A,@DPTR”或“MOVX @DPTR,A”指令访问片内扩展RAM (OOH~2FFH,共768字节);当DPTR≥300H时,系统自动访问外部扩展RAM。
(3) 64K片内Flash程序存储器与ISP功能
STC89C516RD单片机有64K片内用户 Flash程序存储器与8K的片内Flash存储区(可存放ISP引导程序与用户数据),分别处于片内B1ock0和Blockl a 2个Flash存储块在物理上BlockO在前,Bloekl在后。通过REMAP功能可以将Flash块重定位。
ISP是In System Program(在系统编程)的英文缩写,通过ISP使单片不用从用户板上取下来就可以升级用户程序。如果有远程接收装置,还可以应用于远程升级,通过执行ISP引导码改写用户程序,无须编程器,无须亲临现场。STC89系列单片机在出厂时,片内已经烧录有ISP引导码,占用Blockl的程序空间前2K字节,并设置为从Blockl启动。启动时,首先执行ISP引导码,确认是程序下载,还是正常启动。无论是程序下载还是正常启动,ISP引导码最后总是将REMAP取消,恢复B1ock0到的地址空间,进而执行B1ock0中的用户程序,即用户程序总是放在BlockO的OOH开始的单元,除非用户自行修改了ISP引导码。
(4)可编程计数器阵列(PCA)
8051单片机片内有2个定时器/计数器。8052则有三个,能满足一般用户的需求,但在某些特殊场合却略显资源紧张。STC89C516RD额外提供了一个可以无须CPU参与即可独立工作的可编程计数器阵列(Programmable Counter Array ) 。
STC89C516RD的可编程计数器阵列(PCA)是一个16bit的定时器,拥有5个16bit捕捉、比较模块,每个模块均可设置为以下五种模式:上升沿、下降沿捕捉模式;软件定时器模式:高速输出模式;看门狗定时器模式;脉宽调制器模式(PWM )。可编程计数器阵列的时钟源可通过CPSI, CPSO选择,如表3.1所示:
表3.1 编程计数器阵列时钟源
CPS1 CPS0 12时钟模式 6时钟模式
0 0 Fosc/12 Fosc/6
0 1 Fosc/4 Fosc/2
1 0 Timer 0 溢出 Timer 0 溢出
1 1 ECI脚的外部输入 ECI脚的外部输入
可编程计数器阵列比普通的定时器、计数器提供了更多的定时功能,具有减少软件开销与提高精度的好处。PCA除了不能作为波特率发生器外,可实现T0,T1, T2定时器所能提供的所有功能。
PCA捕捉功能可以同时捕捉输入脉冲的上升沿及下降沿,非常适合用来检测脉冲宽度和频率。在高速输入模式下,PCA用作脉冲值计数功能非常方便。由于具有上升沿捕捉功能,PCA还可以用作上升沿的中断,以弥补8052只有下降沿中断的缺陷,在8052中有时不得不另加一个反相器以符合MCS-51的要求。PWM功能可用于控制电动机调速等。
(5)内置复位电路
STC89C516RD内置了类似STC810的专用复位电路,无需另外的复位电路就可实现系统的上电复位。另外,通过设置ISP CONTR特殊功能寄存器可实现单片机系统的软件复位(热启动)。由于复位电路为内置器件,可降低了系统成本,同时也使电路更简洁,有利于提高系统的抗干扰能力。
控制系统硬件框图如图3.2所示。光电编码器用于检测货架左右两侧从动轮的位移,光电编码器信号经过判向倍频处理后由单片机的可编程计数阵列(PCA)计数,通过计算相对差,并以此判断货架是否走偏:开关量输入包括用于安全检测的光电开关与手动控制按钮信号,接入单片机的普通I/O口,采用扫描方式检测;货架左右驱动变频器通过D/A模拟量控制变频器的输出频率;RS485接口为机上控制柜与仓库管理计算机的通讯接口;继电器输出可控制状态指示灯、报警警笛、变频器正反转与制动系统,控制继电器采用普通单片机I/O口控制。为了控制系统的软件升级,本系统设计了编程接口,编程接口为单片机的UART串口,通过RS232转换器与笔记本计算机串口连接。
图3.2 控制系统硬件框图
3.2 485多机通信
RS-485/422采用平衡发送和差分接收方式实现通信:发送端将串行口的TTL电平信号转换成差分信号A,B两路输出,经过线缆传输之后在接收端将差分信号还原成TTL电平信号。由于传输线通常使用双绞线,又是差分传输,所以又极强的抗共模干扰的能力,总线收发器灵敏度很高,可以检测到低至200mV电压。故传输信号在千米之外都是可以恢复。RS-485/422最大的通信距离约为1219M,最大传输速率为10Mb/S,传输速率与传输距离成反比,在100Kb/S的传输速率下,才可以达到最大的通信距离,如果需传输更长的距离,需要加485中继器。RS-485采用半双工工作方式,支持多点数据通信。RS-485总线网络拓扑一般采用终端匹配的总线型结构。即采用一条总线将各个节点串接起来,不支持环形或星型网络。如果需要使用星型结构,就必须使用485中继器或者485集线器才可以。RS-485/422总线一般最大支持32个节点,如果使用特制的485芯片,可以达到128个或者256个节点,最大的可以支持到400个节点。
3.3 左右移动程序设计
下面的程序为无线移动货架自动控制系统软件实现部分的左右移动程序段
// 函数名称: 左移按键处理函数
// 函数功能: 发送左移命令
void manage_walkleft(uchar addr)
{ write_buffer(addr,0x02);
write_buffer(addr,0x02);
write_buffer(addr,0x02);
write_buffer(addr,0x02);
if(forbidleft==0)
{light_forbidleft=0;
}
if(go==0)
{
light_go=0;}}
// 函数名称: 右移按键处理函数
// 函数功能: 发送右移命令
void manage_walkright(uchar addr)
{ write_buffer(addr,0x03);
write_buffer(addr,0x03);
write_buffer(addr,0x03);
write_buffer(addr,0x03);
if(forbidright==0)
{
light_forbidright=0;
}
if(go==0)
{
light_go=0;}}
上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] ... 下一页 >>
无线货架自动控制系统 第7页下载如图片无法显示或论文不完整,请联系qq752018766