通断控制器_百度文库

ߣadmin
Դ未知 ڣ2019-08-04 16:23 ()

  通断控制器_电子/电路_工程科技_专业资料。通断控制器方案 一.通断控制器基本功能。 1. 能无线接收室温控制器过来的关断或开启阀门的数据,关断或者开启阀门。并能实 时监控室温控制器的正常工作与否。 如出现故障, 保持阀门开启向集中器发送报警,

  通断控制器方案 一.通断控制器基本功能。 1. 能无线接收室温控制器过来的关断或开启阀门的数据,关断或者开启阀门。并能实 时监控室温控制器的正常工作与否。 如出现故障, 保持阀门开启向集中器发送报警, 并记录下故障时间。当故障解除后向集中器发送故障解除信息。 2. 自带实时时钟,实时时钟数据能被集中器校对更改,能够通过无线通信校对室温控 制器的时钟数据。 3. 能通过总线向集中器上传关断时间数据。 4. 能存储两年内的每天的关断时间数据总和,并能被集中器实时读取。 5. 能有 led 灯显示目前模块的工作状态。 6. 停电后能记录下停电时间,并能数据储存起来。同时将阀门保持开启状态,并向集 中器发送停电报警, 让室温控制器进入停电工作状态。 当来电后模块回复正常工作。 并向集中器发送模块已正常工作信息,让室温控制器进入正常工作状态。 二.硬件电路性能基本要求。 1. 稳压电源,输入电压 AC24v,输出 DC5v 驱动继电器,输出 DC3.3v 驱动 mcu 外围 电路,输出要求工作电流 500mA 以上,瞬间电流达到 2A 以上。 2. 433 无线模块通信模块电路,要求室内通信距离达到 20m 以上。 3. 实时时钟,当天时间误差不能超过一分钟,能被实时的刷新,更改和读取。 4. FlashMemery 数据存储电路,存储量 10M 以上。 5. 继电器输出以及继电器驱动电路。输出 AC24v 交流电,平时工作电流要求 500mA 以上,瞬间电流要求 2A 以上。控制输入部分为 3.3v ttl 逻辑电平。 6. led 模块状态显示电路。四个显示灯。 7. mcu 最小系统和外围硬件电路在外部停电之后能正常工作一段时间,433 模块电路 工作十分钟以上,485 通信电路能正常工作一天以上。 三.关键器件选型 1.mcu 选型 mcu 选择 PIC18F65K22。 样片 2.1 美金,100 颗以上 1.8 美金,基本配置如下。 2.其余器件选型参照之前通断控制器电路。 四.硬件电路设计。 1. 电源部分 1)24 交流伏经过变压器,起到防雷击,抑制瞬间高压和高频干扰。 2)之后通过整流桥整流,再通过 C2 滤波得到 30 伏左右直流电压。 3)R1,R4 进行电源电压分压,提供给单片机采样使用,监控电源电压。 4)LM2576 降压电路,将 DC30V 电压降至 DC12V,DC12V 直接供给继电器使 用。 5)二极管 D7,R7,C8 构成电路为当模块停电后为 mcu 外围电路供电。D7 防止 电容电量向其他电路泄漏,R7 抑制上电瞬间的大电流。 6)LD11117AS 给电路模块提供 3.3v 电压。 2.继电器驱动部分。 1) R9 限值 VCC12V 通过 PN 结灌向软脚的大电流,同时通过限制基级电流起到 限制三极管的群动电流。 2) Q1 选用 PNP 管,免除下拉电阻,免除下拉电流。 3) 1N5819 用 作 续 流 , 消 除 继 电 器 中 线 圈 产 生 的 瞬 间 高 压 。 4) 自恢复保险丝,防止电动阀电流过大。短路保护。 2.模块状态显示部分。 RUN 为模块正常工作指示灯正常工作时常量,RS485 为通讯指示灯,485 总线上 有通讯发生时闪烁, 为无线 无线模块发送和接受数据时闪烁, VCC12V 为电源指示灯,上电后常亮。 2.MCU 最小系统部分。 1)Y1 为实时时钟晶振。 2)Y2 为单片机外部时钟晶振。 3)18 脚拉高使能 MCU 内部稳压器,C19 为内部稳压器滤波电容,此处电路参照 DataSheet。 3.调试电路 1)J4 为程序下载口。 2)R12,R13,C17 构成上电复位电路,R13 防止灌电流过大破坏复位引脚,R13 在 烧录程序时应该拆除,防止 C17 充放电延时影响烧写波形的时序。 4.无线 通信电路。 五.软件设计。 DisableInterrrupt( );//禁止所有中断 McuInit() ;//初始化 MCU 的时钟(PLL 初始化,10M 晶振为外部时钟, //32.768 辅助 RTC 时钟) ,IO(两路继电器输出,一路 ad 采 //样输入,三路显示输出,一路 IO 输入),两路 SPI(主从机 //配置,边沿 //置,IO 方向设置) ,一路 UART(波特率配置,管脚方向 //配置) Init433() ;//开启 SPI_1 中断初始化 433 模块 InitFlash(); //关闭 SPI_1 中断,开启 SPI2_中断初始化闪存 InitMBus() ;//关闭所有 Spi 中断,开启串口中断初始化 Mbus //和集中器核对时间 EnableInterrupt() ;//配置中断,UART 为最高优先级,433SPI 为第二高 //优先级,FlashMemerySPI 为第三高优先级(写 Flash // 时才开启), //开启 UART 和 SPI1 中断 while(1) { Valve() //判断阀门标记位。为真开启阀门,开始计 ; //时。为 0 关闭阀门结束计时,并将计时 //数据写入缓存。 Power(); //监控电源电压,过低将目前数据写入缓存,等 //待发送停电信息给室温控制器模块和集中 //器。关闭 Led 灯。 //Mcu 进入睡眠状态,433 模块进入休眠状态 //开启 Portb 电平改变中断。 } UARTInterrupt() ;//串口中断函数发送集中器请求数据,若处于停电 //状态,附带发送停电信息 SPI_1Interrupt();//SPI1 中断函数跟具温度控制器过来卡关阀门数据更改 //标记位,发送请求时间数据数据,如果停电附带停 //电信息 PortbInterrupt() ;//将模块各部分重睡眠模式唤醒,退出时关闭 PORTB //电平改变中断

ܻϲ
Ƽ