基于51单片机与Lonworks的可视对讲系统设计

发布者:PeacefulSoul最新更新时间:2011-12-03 关键字:51单片机  Lonworks  可视对讲系统 手机看文章 扫描二维码
随时随地手机看文章
    随着智能化住宅小区的出现,传统的门铃已经远不能适应现代的家庭。人们希望通过一种新的方式来了解来客情况,同时确保自身的安全性,减少不必要的麻烦。因此各式各样的门铃悄然走进千家万户。

    从简单的叫门工具,到多功能、综合型电器,使用者的标准越来越高,对讲系统已成为现代多功能、高效率现代化住宅的重要保障。随之而生的楼宇对讲系统,也随着城市住宅小区的建设和发展,不断地推陈出新。从最初的普通单元门对讲,到可视单元门对讲,发展到联网管理,智能楼 宇对讲系统已成为一种兼容性强大的综合系统。可以说,智能楼宇对讲系统不仅仅是方便住户和访客的电控门系统,也是小区物业管理和安防管理必不可少的有效手段,是现代化住宅小区必不可少的设施 。

    1 Lonworks总线技术

    一般的可视对讲系统大多由单片机与RS-485总线构成,虽然成本低,但受到RS-485总线的限制,在无中继的情况下,通信距离不能太远,通信速率也不能太高,而采用中继则会提高成本, 增大设计开发和施工维护的难度。如果采用单纯的Lonworks总线,又会降低网络对其他总线设备的兼容性,增加开发成本和设计困难。笔者采用基于单片机与Lonworks的可视对讲技术,不仅可以克服以上缺点,而且能更好地发挥二者的优势。整个系统由门口单元主机和户内可视分机组成,在网络上视其为不同的通信节点。在普通的通信网络中,节点对节点的访问所采用的协议是不同的,而对于Lonworks网络中设备的通信,则只需要采用一种称为LonTalk的网络标准语言实现。LonTalk协议由各种允许网络上不同设备彼此间智能通信的底层协议组成。

    LonTalk协议又称为ANSI/EIA709.1控制网络标准,它提供了一系列通信服务,使得设备中的应用程序能够在网络上同其他设备发送和接收报文,而无需知道网络的拓扑结构或者网络的名称、地址,或其他设备的功能。LonTalk协议能够有选择地提供端到端的报文确认、报文证实和优先级发送,以提供规定受限制的事务处理次数。对网络管理服务的支持使得远程网络管理工具能够通过网络和其他设备相互作用,这包括网络地址和参数的重新配置、下载应用程序、报告网络问题和启动/停止/复位设备的应用程序。Lonworks系统可以在任何物理媒介上通信,这包括电力线、双绞线、无线(RF)、红外(IR)、同轴电缆和光纤 。

    同时,LonTalk支持在通信介质上的硬件碰撞检测,LonTalk可以自动地将正在发生碰撞的报文取消,重新再发。如果没有碰撞检测,当碰撞发生时,只有得到响应或应答时才会重发报文。Lonworks采用的是优先级带预测的p一坚持CSMA算法来实现碰撞检测。实验表明,36个节点互联,采用普通p一坚持算法,当每秒要传输的报文达500~1 000包时,碰撞率由10%上升到54%;而采用预测p-坚持CSMA算法在500包以下时碰撞率很低,在500~1 000包时,碰撞率稳定在10%。在网络的MAC层中,为提高紧急事件的响应时间,必须提供一个可选择的优先级机制,允许用户为每个需要优先级的节点分配一个特定的优先级时间片(priority slot)。在发送过程中,优先级数据报文将在该时间片内被发送,优先级时间片可分为0~127之间的任意登记,低优先级的节点需要等待的时间较长。这个时间片加在p一概率时间片之前(即节点的随机等待时间 之前),非优先级节点必须等优先级时间片完成后,再等待P-概率时间片后发送,这样,加入优先级的节点具有更快的相应时间,从而也更能提高网络的利用率。

    在智能小区的设计中,采用Lonworks总线可以将众多的控制线路和通信线路集成到廉价的双绞线之上,既节约了开发和施工成本,也方便了网 络的规划和管理。[page]

    2 系统结构设计
 
    对于整个园区,采用星型分级网络;对于较大型的小区通信系统,可以采用域的管理方式。园区网络结构如图1所示。

 

    图1 园区网络结构图

    所有节点由AT89S52单片机系统和神经元芯片TMPN3150B1AF构成核心模块,加上FTT一10A收发器和相应的外围电路构成。神经元芯片  有11个I/O口,可由软件灵活配置34种不同接口,单片机较强的实时控制能力保证了数据间传输的实时性。整个系统由多个子网络构成,子网  络与子网络通过Lonworks路由器进行扩张。各节点通过Lonworks总线进行网络通信,相互之间以双绞线相连,通信速率为78 kb/s,可视对讲系统的视音频模拟信号通过视音频总线传输。该方案采用2级总线设计,实现在同一系统中同时进行多个通话的功能。同时,设置网络数据管理机和数据服务器,实现实时控制网络与计算机网络的信息共享 。

    3 节点硬件设计

    节点硬件设计是通过单片机和Lonworks联合控制来实现的。节点硬件原理图如图2所示。

 


    图2 节点硬件原理图

    (1)CPU。节点的CPU采用工业级AT89S52和Neuron Chip家族的TMPN3150B1AF,3150芯片不带程序存储空间,因而需要外接外部RAM,存放包括LonTalk协议、Neuron C库函数和任务调度程序的系统映象,存放包括Neuron C编译器产生的用户应用程序代码和其他特定应用参数的应用映象。3150芯片有11个应用I/O引脚,这些引脚可以各种方式配置并提供具有最小外扩电路的灵活I/O功能,可通过软件设置成34种可选的工作方式。在本系统中,将其设置成方式2,即位输出(bit output),用以控制继电器构成的视音频切换器 。

    (2)收发器。选用Echelon公司的FTT-10A,通信速率为78 kb/s,带有变压器隔离耦合和一个曼切斯特编码器,支持多种网络拓扑结构。 

    (3)程序存储器。选用Winbond公司的W27C512—45,可以很方便地利用LonMaker来直接下载应用映象,其大容量也为将来的功能扩展提供了便利。

    由于采用了单片机与Lonworks技术相结合的办法,不仅兼容了户内传统的监控设备,同时也提高了网络的通信效率和传输速率,简化了整个系统,减少了硬件出错的可能性,提高了系统的可靠性,大大减轻了硬件设计的工作量。

    在工作流程上,一方面当户内发生异常情况,如产生超过正常浓度的烟雾以及门窗被非正常开启等,经监控设备所采集的相应监控信号将送入户内可视分机,经51芯片判断处理后送交神经元芯片,经过收发器送上Lonworks网络,并传输到管理中心进行相应的显示和报警,从而方便小区管理人员及时采取应对措施;另一方面有访客通过单元主机向户内发送请求,则启动主机上CCD摄像头,并使相应的视频切换继电器吸合,将访客影像实时传送到户内可视分机的显示器上,方便户主辨别。当户主开启与门口主机相连的电磁锁时,切断视频连接,释放线路资源以便于其他访客使用。

[page]

 4 节点软件设计
 
    4.1 Lonworks部分

    Neuron芯片的编程语言为Neuron C,它是从ANSI C派生出来的,并对ANSI C进行了删减和增补。例如,Neuron C由事件的发生来驱动任务的执行;Neuron的芯片提供了毫秒和秒这2种类型的软件计时器。

    主程序流程如图3所示。它主要完成的任务如下:首先对I/O对象和软件计时器的定义以及设置变量初始值,判断是否有“开锁”信号,并启动计时器开始计时,计时器终止时,Neuron芯片接受新的定时任务 。

 


    图3 主程序流程图

    神经元芯片(neuron chip)是Lonworks技术的核心所在,它是一个带有多个处理器、读写/只读存储器(RAM/ROM)以及通信和I/O接口的单芯片系统。只读存储器包含一个操作系统、LonTalk协议和I/O功能库。Neuron C是一种基于ANSI C并为神经元芯片设计的一种编程语言,它对ANSI C进行了扩展以直接支持Neuron芯片的固件例程。Neuron C语言包括一个内部多任务调度程序、一个Run—Time函数库,采用的是事件驱动编程结构。整个接点的软件功能都是由若干个事件驱动完成。

    对于单个节点,软件设计包括初始化,读取输入数据,更新网络变量,定时控制和执行输出控制操作等任务。

    而对于园区网络,则将总线控制权交由管理中心掌握,其他节点如有总线占用需求,需要向管理中心发出请求,等待管理中心发出请求响应命令;而当节点总线访问程序结束后,管理中心会发出释放总线命令,终止节点对总线占用,以方便其他节点对总线的访问。

    4.2 单片机部分

    单片机部分CPU采用ATMEL公司生产的工业级AT89S52芯片,这种芯片是AT89C51的工业版本,具有抗干扰能力强和价格低廉的特点。单片机系统软件需要实现的基本功能如下:

    (1)待机功能。平时(无控制操作时),户内可视分机和单元主机均处于待机状态,射频模块、单元主机摄像头以及户内可视分机显示屏电源均处于关闭状态。 

    (2)监控信号采集功能。户内可视分机不仅是连接单元主机的节点,更是户内各监控点信号采集的中心,当门磁、窗磁、户内红外、烟感以及紧急信号被发出时,都将首先送到户内可视分机,由AT89S52进行判断和初步处理,然后转交TMPN3150B1AF芯片送上Lonworks通信网络,传送到管理中心进行显示和处理。 

    (3)开锁功能。通过户内可视分机,可以控制打开安装于单元门上并与单元主机相连的电磁锁。控制软件由汇编语言编写,分户内可视分机和单元主机两部分,由系统不同状态的处理和切换组成。

    5 结论
 
    采用基于单片机与Lonworks技术的可视监控系统,不仅不用单独为Lonworks网络设计专用的监控设备,而且提高了通信网络的使用率,简化了网络设计,减少了开发和生产成本,使可视化监控更加人性化。

 

 

关键字:51单片机  Lonworks  可视对讲系统 引用地址:基于51单片机与Lonworks的可视对讲系统设计

上一篇:由Proteus仿真入门单片机学习
下一篇:基于51单片机控制的自动停车收费管理系统

推荐阅读最新更新时间:2024-03-16 12:47

基于51单片机的红外遥控密码锁的设计与实现
  1 引言   根据用户的要求和需要,主要为了解决当前市场上无遥控密码锁的问题,以提高门禁系统的可靠性和安全性,适应市场需要而设计的该红外红外遥控密码锁系统。该系统具有普通电子密码锁功能的同时,还增加了遥控功能。该锁采用6位数作为密码,总密码组有106组,完全满足用户对密码安全性高的要求。该系统具有较强的实际应用价值,所涉及的技术包括:红外载波数据传输技术、单片机控制技术、红外遥控系统编码及译码技术、电路设计与演示板制作技术等。   2 系统硬件设计与实现(单元电路设计)   2.1 硬件结构图:   系统以单片机AT89C51RC为核心。系统结构框图如图1所示。本系统的功能设计目标应该包括以下几个方面:红外发射功能模块
[单片机]
基于<font color='red'>51单片机</font>的红外遥控密码锁的设计与实现
8051单片机(STC89C52)八段数码管静态点亮
在STC89C52的左上角, 有八个八段数码管. 在控制数码管点亮的过程中, 某一时刻只能根据P24 P23 P22三个引脚的高低电平情况(3-8译码器的三个输入)点亮一个数字. 这里(P24, P23, P22) = (0, 1, 1), 则从右数第四个数字亮. 再令P0 = 0x5b;//0101 1011, 则该位置显示数字 2 . 补充说明一下P0给定数值与数码管引脚的对应情况: (0, 1, 0, 1, 1, 0, 1, 1) - (h, g, f, e, d, c, b, a). P24 P23 P22 右数第几个数码管亮 0 0 0 1 0 0 1 2 0 1 0 3 0 1 1 4 1 0 0 5
[单片机]
80<font color='red'>51单片机</font>(STC89C52)八段数码管静态点亮
80C51单片机定时计数器的功能详解
单片机结构是什么样的,由什么模块组成 单片机(Micro Control Unit)全称微型控制单元,简称单片机(MCU),从字面意思可以了解到它其实就是一个微型的计算机系统,51单片机包含CPU(8051内核),SRAM(内存)惨不忍睹的1K,闪存(硬盘)也只有可怜的几十K,然后外围的模块基本就是下载代码用的ISP,中断模块,基本输入输出I/O模块,复位模块,串口模块,EEPROM,看门狗。单片机种类比较多,51是我们常用的单片机型号,主要应用的场合有数码家电(洗衣机,电饭锅,电磁炉,微波炉),工业现场数据采集与传输等。 80C51定时计数器有两个功能,定时功能和计数功能,定时计数器实质是一个加一计数器,无论做定时还是做
[单片机]
80C<font color='red'>51单片机</font>定时计数器的功能详解
51单片机(二)—— GPIO&Uart
一、GPIO 1.1 内部上拉电路 51单片机的I/O口都可以同时作为输入和输出之用。除了P0口以外,其他的I/O口都有内部上拉电阻。 3个内部上拉电阻都有不同的功用,要理解这个电路需要一定的模拟电路的知识。 内部上拉电阻示意图 由于相关的硬件配置,在编程时有以下需要注意的地方: 当I/O口被用作输入用途时,读取输入前要保证锁存器状态为1。 当将I/O口由低拉高时,指令执行后需要1~2个机器周期才能使实际的输出变成高电平。 在外围电路上需要注意的地方: P0口做普通I/O使用时,要加上拉电路,因为其没有内部上拉。 为防止电流过大,必要时外加限流电阻。 1.2 编程示例 51单片机的I/O口在使用时,并不需要对其
[单片机]
51单片机-再次优化不支持连按的代码
1.还需消抖 可以看到我们在第6讲和第7讲的按键不支持连按代码中,死循环都有“delay_ms(2);”,因为大多数时候主循环都要做很多事,所以我们认为这2ms的延时是很多复杂程序要执行所消耗的时间,而正是因为这个延时函数的存在把按键的物理抖动给滤掉了,误导了我们以为这样的不支持连按代码是合格的。如果我们还是用这种写法去实现不支持连按功能,那么请把下面的代码下载进开发板通过快按和慢按K4,观察数码管的显示。 2.缺陷代码 #include reg52.h sbit ADDR2 = P1^2; sbit ADDR1 = P1^1; sbit ADDR0 = P1^0; sbit ENLED = P1^4; sbit ADD
[单片机]
<font color='red'>51单片机</font>-再次优化不支持连按的代码
基于51单片机驱动A4988实现步进电机逆时针转动
一、简介 A4988 是一款完全的微步电动机驱动器,带有内置转换器,易于操作。该产 品可在全、半、1/4、1/8 及 1/16 步进模式时操作双极步进电动机,输出驱动 性能可达 35 V 及 ±1 A。A4988 包括一个固定关断时间电流稳压器,该稳压器 可在慢或混合衰减模式下工作。转换器是 A4988 易于实施的关键。只要在“步 进”输入中输入一个脉冲,即可驱动电动机产生微步。无须进行相位顺序表、高 频率控制行或复杂的界面编程。 二、接线 典型接线图 实际接线 此处为方便 MS1-MS3不接ENABLE 低电平有效 此处不接 有需要可自行连接配置 A4988 模块 STC89C52RC 步进电机 电源 DIR P
[单片机]
基于<font color='red'>51单片机</font>驱动A4988实现步进电机逆时针转动
51单片机和LCD12864贪吃蛇
单片机源程序如下: #include 12864.h #include tcs_resource.h #define num 15 //用来描述蛇在液晶上面一个点的结构体 struct she { unsigned char x,y,value; unsigned char direction; }; struct loop_queue //利用循环数组实现循环队列,拐点不会超过15个。所以大小选15足以。 { unsigned int front; unsigned int rear; unsigned int count; struct she da
[单片机]
<font color='red'>51单片机</font>和LCD12864贪吃蛇
51单片机软件三重监视抗干扰技术
应用于工业过程控制和智能化仪器仪表的单片机,由于现场条件往往十分恶劣,不可避免地会受到各种各样的电磁干扰。当串入系统的干扰作用于单片机内部的CPU部件时,后果更加严重,将导致系统失控。最典型的失控故障是破坏程序计数器PC的状态,导致程序在地址空间内“乱飞”,或者陷入“死循环”。因此,尽可能早地发现程序失控,并采取相应的补救措施,是单片机应用系统抗干扰设计的重要内容。 使程序从“乱飞”状态纳入正轨的方法称为程序拦截技术,包括指令冗余技术、软件陷阱技术等。使程序摆脱“死循环”,通常多采用硬件电路实现的监视技术,又称“看门狗”技术(Watchdog)。常见的硬件“看门狗”电路有单稳态型“看门狗”电路、计数器型“看门狗”电路、微处理器监
[单片机]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved