控制/MCU
本节中的CAN是Control Area Network的缩写,是控制器局域网的意思。它采用差分驱动,可在强噪声干扰环境下使用,加之检错能力强等方面的优点,已被应用于很多领域并特别适合基于单片机的分布式控制系统。
CAN是全数字式现场控制设备互联总线。它能有效支持分布式控制和实时控制的串行通信网络,已成为一种国际标准( SI011898)。CAN也由数据链路层及物理层构成。数据链路层的LCC与MAC可以由单片机的软件来实现;物理层可采用双绞线,从而也可很方便地实现多个单片机的长距离的分布式控制。
CAN的突出特点是:①可以以多主方式工作,网络上任一节点均可成为主节点,向其他节点主动发送信息;②具有非破坏性总线仲裁和错误界定功能,利用现有的产品,可使总线冲突的解决和出错界定由控制器自动完成,对用户完全透明,且能区分暂时和永久故障,并自动关闭故障节点;③CAN节点可被设定为不同的发送优先级,满足不同的实时要求;④通信距离可达10 km(速率5 kb/s),速率可达1 Mb/s(距离在40 m以内)。
本系统由多个节点组成,如图1-107所示。节点数目可根据规模增减,最多64个。节点按构造可分为两类:一类是可与CAN总线直接相连的总线节点;另一类是不与CAN“总线直接相连的扩展节点。扩展节点与总线节点的区别是,其不带CAN控制和驱动模块,与总线节点相连,通过RS - 232通信。总线节点和扩展节点按功能又都可分为两类:一类是PC机节点;另一类是检测报警节点。PC机节点由PC机担任,用于整个系统的监视控制、系统的状态显示和参数设置等功能。检测报警节点负责具体的检测、控制和报警功能。每个检测报警节点的硬件结构如图1 - 108所示。该类节点主要由带CAN控制模块的MC68HC705X32微控器、温度传感器、红外入侵探测传感器、烟雾传感器、电子密码遥控门锁、报警继电器、传感器电源控制继电器、键盘、显示器、RS - 232通信接口和CAN总线驱动电路组成。
该类每个节点实现以下功能:
电子门锁 进入房门时输入密码:若正确,则门锁自动打开;若密码连续输错3次,则本地报警并把报警信息传至其他节点。
红外人侵探测 在主人离开住宅后,可打开红外探测报警功能,这时若有人在房间内走动便触发报警。用密码打开门锁后,红外探测报警功能自动关闭。
烟雾检测 当室内的烟雾浓度达到一定阈值时,发出烟雾报警。
一氧化碳检测 当室内一氧化碳气体浓度达到一定阈值时,发出报警。
温度检测 实时测量室内温度,超过规定值便报警。测量的温度值可在节点显示器上显示。
CAN通信 可向其他节点发出报警信号,也可接收其他节点的报警信号。能自动随时检测CAN通信的正确性,有错时可报警。
异步串行通信采用RS - 232,可接收来自其他节点的报警信号(包括各种数据)或向其他节点发送信号。
键盘、显示器用于本地监视、参数设置、时间设定和命令输出。
CAN总线驱动电路配置两套:一套以75176作为主要驱动器件;另一套主要由二极管和电阻实现。
每个节点均使用分布式控制执行软件FDCX05,在其管理下的任务有以下几项:
1.通信控制任务
它接收其他任务传来的报警信息,并转发至CAN总线和扩展节点。它还接收其他节点传来的信息,向PC机节点报告节点状态,与PC机校对系统时间。在有报警信息时,本任务还负责执行报警输出控制。
在分布式控制执行软件FDCX05下定义的报文格式如表1- 28所列。其中,数据区中的数据类型及格式如表1- 29所列。节点号字节在PC机发往节点的信息中无意义,因节点号已在信息第一字节CAN标识字ID10~3中表明。而在各节点发往PC机的信息中,因为这时信息第一字节CAN标识字节ID10—3中表示收信节点号或转发节点号,故必须将发信节点号填入该域(即使发信节点与收信节点相同亦如此)。表1- 28中的报警原因:O表示开门密码连续错误次数超过3次报警;1表示温度报警;2表示烟雾报警;3表示红外入侵报警。通信控制任备程序框图如图1 - 109所示。
2.内键盘管理任务
内键盘用于接收用户输入的键盘命令,包括参数设置、功能控制等,并按命令执行指定的操作,还可向其他任务转发命令。它也负责4位LED的显示驱动和显示切换(月/日、时/分、温度)。设置密码时,先让用户校验旧密码,然后输入新密码并重复新密码。任何一步出错则密码设置失效。设置红外入侵报警用于在主人离开房间后激活红外报警功能。为防止当用户自己在房间时报警,可取消报警功能。内键盘管理任务程序框图如图1 - 110所示。
3.外键盘管理任务
外键盘设在电子密码门锁上,控制门锁的开启。用户键入密码,若正确则给出开锁控制信号,并记录开门时间,4s后自动恢复门锁关闭状态。
红外入侵监测任务、一氧化碳监测任务、烟雾监测任务、温度监测任务的程序框图省略。
全部0条评论
快来发表一下你的评论吧 !