DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 299|回复: 0
打印 上一主题 下一主题

基于单片机控制的新型智能控制系统设计

[复制链接]
跳转到指定楼层
楼主
发表于 2012-1-27 19:49:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

  
         
    1 引言
  多媒体教室是现代化教学环境和设施的重要组成部分,目前我国各类学校都建设了一批多媒体教学课室,勇于开展多媒体教学,有力地推动了教学手段的现代化。正在逐步改变教师的教授和学生的学习模式,加大了教学信息量,提高了教学效率和教学质量,加快了教学改革步伐。而基于单片机控制的智能教室控制系统主控制器沟通了控制计算机与教室控制器之间的联系,起到桥梁的作用。作为分布式控制的系统的核心,主控制器的性能的优劣直接影响到整个系统功能的实现。因此主控制器的设计至关重要,本文将对主控制器的硬件和软件进行设计研究。
  2 主控制器硬件总体设计
  主控制器通过RS-232总线与控制计算机相连,接收控制计算机发出的命令,经过单片机的处理,通过RS-485总线发送操作命令到教室控制器,完成控制计算机的操作动作。系统主要功能电路有:主控制电路、与控制计算机接口电路、与教室控制器通讯接口电路、实时时钟电路、红外信号发射电路、存储器扩展电路及控制器供电电路等。其系统组成如图1。
  3 硬件电路详细设计
  3.1 主控芯片选择与供电电源设计
  主控制器的核心控制芯片采用深圳宏晶电子公司STC89C52RC单片机。该单片机以8051为核心电路,拥有三个定时器/计数器、两个外部中断、32个通用I/O接口并拥有高速的数据处理能力,同时内部扩展了256字节的RAM并带有内部看门狗,非常适合于工业级别的、对实时性要求不是非常高的场合。扩展的RAM可以通过单片机外部数据读写的方式进行操作,用来存放红外自学习时大量的零时数据。
  对于一个电气系统,电源是不可缺少的部分。STC89C52RC单片机为+5V供电,而外围触发电路需要+12V的电源。在这种情况下,所需电压的得到一般可通过外部开关电源或交流220V单相电经变压器、经过桥式整流后再经过电容、电感滤波直接得到。一般来讲,这样得到的+12V和+5V电源负载能力较强但波纹较大,很难直接应用到系统中。因此,一般要经过DC/DC变换将该电压进行隔离稳压处理。




  图1 主控制器硬件组成框图
  3.2 复位电路与看门狗电路设计
  本次设计采用的复位芯片为C7705,它是电压监视器件,具有电源投入时的复位功能,并能够监测出电源瞬时短路和瞬间降压而产生的复位信号。该芯片内部具有电源上升时的复位信号解除功能,能正确地监测降低的电压(Vs=4.5-4.6V),其内部附有温度补偿的基准电压,正负两种逻辑输出(集电极开路30mA ),原理图如图2所示。




  图2 系统复位电路
  电路除了具有上电自动复位功能外,还可以通过复位按键迫使RESET为低电平。当系统掉电时,复位电容里存储的能量可以以二极管为通路迅速放电,这为单片机在复位上电的情况下可靠复位提供了保证。
  看门狗的作用就是防止程序发生死循环,或者说程序跑飞。硬件看门狗是利用了一个定时器,来控制主程序的运行,也就是说在主程序的运行过程中,我们要在定时时间到之前对定时器进行复位如果出现死循环,或者说PC指针不能回来。那么定时时间到后就会使单片机复位。本次设计中,采用MAX813L芯片作为硬件看门狗,其RESET端与单片机复位端相连提供复位信号,由单片机的P1.0提供喂狗信号。看门狗硬件电路如图3所示。




  图3 硬件看门狗电路
  3.3 系统通讯接口设计
  8051单片机带有一个异步通信串行接口,并具有一个通信可编程位,使用它可以很方便地完成单片机之间的多机通信。本系统的设计中,主控制器的主要任务是把控制计算机中的控制指令进行处理,并通过异步通信串行接口把控制命令发送到下位机。但是,由于8051单片机本身只提供了一个串行口,因此为了实现上述目标,就必须再扩展一个通信接口,本系统就使用8251扩展8051串行通信接口。
  由于主控制器安装在主控室内,与安装在教室内的教室控制器之间距离较远,且工作环境复杂,两者的通信存在很大的环境干扰。本系统的设计从经济条件、施工难度、传输距离等方面考虑,选择了工业控制系统中常用的RS-485总线。使用RS-485总线,一对双绞线就能实现多节点联网,构成分布式系统。但是如果在工程中需要更长的通信距离,超出RS-485接口能够提供的可靠传送数据范围时,单一的RS-485通信控制芯片对就无法完成了。这时,必须在传输线路中增加中继器。利用RS-485中继器,可以将一个大型RS-485网络分隔成若干个网段。RS-485中继器就如同RS-485网段之间连接的“桥梁”。当然每个网段还是遵循上面的485规范,即 1.2公里长度,32个节点数.
4 主控制器软件设计
  系统的软件设计是整个系统功能实现的关键所在,软件设计的优劣直接影响系统的性能,在相同硬件基础上设计的软件功能差异可以很大。由于本次设计要频繁的对数据进行读写和处理大量的数据,占用了CPU的大量资源,因此在优化软件设计的同时,还要注重核心芯片的选择。

  系统软件设计根据功能要求软件控制模块可分为。上电后系统开始运行,系统先调用初始化,对各个接口状态进行自检,对各个控制寄存器赋初值,然后进入循环等待操作命令的到来并执行命令。系统处于循环状态运行时则调用通讯子程序工作,接收控制计算机发送的控制命令,同时向教室控制器进行转发;系统中断时调用定时中断服务子程序。主控制器程序运行框图如图4所示。
  4.1 通讯子程序设计
  系统采用RS-485总线式网络结构,主从式通信方式,即主控制器以查询的方式与各子控制器通信,子控制器相互间不直接通信,而是通过主控制器,间接的相互通信。同时,数据的交换过程(包括建立连接和交换数据)采用一问一答的方式,主控制器询问了子控制器,子控制器才给予应答,收到应答后,数据交换才继续进行下去。这样的方式可以避免多个子控制器间没有次序的数据通信,扰乱整个网络上数据的传输。系统多机通信按以下协议进行:




  图4 主控制器程序运行框图
  (1) 首先初始化,使所有从机处于接收地址帧状态,即使SM2=1。
  (2) 主机先置TB8=1,发一帧地址信息,主机发出信息后马上启动一个等待状态定时器(定时几十ms)。
  (3) 从机接收到地址帧后,各自产生串口接收中断将接收到的地址与本机地址比较,地址相符的从机使SM2=0,处于接收数据状态,并屏蔽串口中断,然后发回本机地址作为确认信号,其余从机不进行任何动作,继续监听地址。
  (4) 主机收到对应从机地址后,令TB8=0,开始发送数据信号,主机与对应从机通信建立。此时其他从机均无中断响应,若主机长时间未能接收到数据,而导致等待状态定时器中断,此时主机应强制退出与该从机的通信,并使从机复位。
  (5) 通信建立后,主机连续发送数据帧和校验帧,从机接收后进行数据校验,数据错误接受错误则返回错误码,主机重新发送数据,重复三次,若三次均出错则报上位机系统出错;若数据发送正确,则返回地址继续进行通信。
  (6) 通信结束后,主从机复位。主机使TB8=1,回到发送地址状态;从机使SM2=1,并打开串口中断,回到接收地址状态。
  4.2 实时时钟子程序设计
  实时时钟子程序设计能向控制计算机提供系统运行时间。同时提供定时功能,当定时时间达到时,实时时钟芯片DS 12887产生一个低电平触发单片机中断程序,完成定时操作功能。DS 12887状态寄存器的参数设置如下:状态寄存器A置为20H,表示开启时钟并禁止SQW管脚输出方波。状态寄存器B置为26H, 表示允许闹钟中断,禁止其他中断;二进制数据表示;采取24小时格式;禁止方波输出和夏令时服务。
  本文作者创新点
  本文设计了基于单片机控制的智能教室控制系统的主控制的外围电路。采用了DS12887芯片,对系统时间模块进行了设计。重点讨论了主控制器的通讯模块设计,对RS-485总线在通信节点扩展方面进行了全新的设计。同时对主控制器进行了软件设计。
  参考文献:
  [1] 郝铭,刘景泰,卢桂章.基于RS485总线分布式智能控制系统的设计与实现[J].自动化与仪表,2005,(2): pp. 23-25
  [2] 刘富强.单片机在多媒体系统中多功能控制卡的应用研究[[J].东南大学学报,1998年第三期,p66-70
  [3] 张小梅,陆俊,彭冰沁,刘宏. 嵌入式智能家居控制系统的设计与实现[J]. 微计算机信息, 2007, 1-2: pp.55-56.
  [4] 姜地..RS-485多机通讯技术[J].中国科技信息,2006,(17):126-129
         
          [/td]
        [/tr]
      
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2024-11-15 05:25 , 耗时 0.086916 秒, 18 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表