STM32锅炉控制器方案 支持ModbusRTU和上位机通信

  资料下载: https://download.csdn.net/download/vvoennvv/88499366

一、概述

        使用STM32F103芯片,根据状态机处理事件的锅炉控制器的项目,支持外设自检、文件存储、Modbus RTU通信、采集热电偶、采集直流模拟量、采集水温、采集炉温、开关量输入、拨码开关查询、看门狗等功能。

二,软件设计

1. 上电运行后,首先检测急停按钮是否按下,如按下,停止所有IO输出。急停按钮需要一个IO输入点,正常时为ON, 按下后为OFF.
2. 传感器故障: 检测传感器测温是否异常,传感器是否断线,如未出现故障程序向下执行,否则输出一个传感器故障位ON(内部寄存器),并使报警位ON(IO输出端)。(要定下来几路传感器,不然没法判断哪路故障)
3. 炉温超温:传感器实测温度与设定的超温值比较,如未超过,程序向下执行,否则输出一个超温故障位ON(内部寄存器),并使报警位ON(IO输出端)。
4. 炉体超温:检测定义好的某IO输入端,如为OFF,程序向下执行,否则输出一个炉体超温故障位ON(内部寄存器),并使报警位ON(IO输出端)。
5. 自动/手动(本地):检测定义好的某个IO输入端,如为ON,程序执行手动状态,否则执行自动状态。

5.1 本地手动:检测定义好的IO输入端(1#启动),如为ON,将此状态保持,使1#输出位ON。(此功能执行方式为:1#启动按钮按下,同时1#停止为OFF,并且传感器实测温度低于可设定的炉温上限值,将此状态保持,并输出给定义好的IO端,如停止按钮按下,或温度大于上限,将状态复位,停止IO输出。 *共有12路输出,按钮均为点动控制)

5.2 本地自动: 程序向下执行。

6. 自动/手动(屏幕): 由触摸屏来控制某个定义好的内部寄存器,如为ON进入屏幕手动状态,否则进入自动运行。   控制过程同上, 1#启动,1#停止……….12#停止,均使用定义过的内部寄存器,由触摸屏控制。
7. 自动运行: 检测是否在允许加热的时间内。
        *时间控制方式: 使用峰平谷/自定义两种控制方式,下附触摸屏截图:
8. 如实际温度低于设定下限, 并且低于设定上限,将此状态保持。依次进行IO输出
9. 如实际温度大于等于上限后,将状态复位,依次停止IO。

IO依次输出:如此功能开启,按照触摸屏指定时间,依次进行1.#到12#输出。
IO依次停止:如此功能开启,按照触摸屏指定时间,依次停止1#到12#。

附:

A:峰平谷,自定义,通过改变某寄存器状态进行切换(ON为自定义,OFF为峰平谷),峰平谷中,定义每段时间后,通过开启位,使该段生效。  同时,应有:峰 平  谷  的选择按钮,只有选择该按钮后,这一时期的设置才最终生效。
B: 炉温连续采集,有连接采集和间隔采集两种温度采集方式,如选择间隔采集,在屏幕设定时间内间隔采集。
 
C:加热器路数设定:设备共有12路加热。在自动运行中,应有每一时段开启的路数选择。**加热器不能出现同时启动,或同时停止的情况,只可以依次启停。 

D:如果循环泵停止,不允许加热器输出。(循环泵为定义的IO输入端)
E:报警器应有测试,开启\关闭功能。

三,原理图和PCB

 

四,总结

一个学习STM32不可多得的项目,通过该项目可以熟悉STM32各种片内资源的使用。

 资料下载: https://download.csdn.net/download/vvoennvv/88499366

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

千源万码

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值