工程思想——继电器特性抖动处理
前言:之前带同学做题时候发现高中技术选考中总会有一个题,考到对继电器特性的抖动处理。包括自己做工程时候,也会遇到这样的问题。嵌入式中经常会涉及到一些信号,而这些信号往往不是一个稳定的值,会产生一些不可避免的抖动,接下来对这个问题做个记录。
1. 基础功能
假设现在需要完成一个洗碗机的控制系统,洗碗的水要求用热水。现对水箱用继电器控制加热棒加热,并用温敏电阻测量水箱温度。要求在水箱温度小于65℃时,继电器吸合,加热棒开通,加热水箱水;在水箱温度大于等于65℃时,继电器断开,停止加热。
2. 遇到问题
在理想状态下,温度数据为平滑变化时,满足<65℃,继电器开通;>=65℃时,继电器断开。但在实际情况下,由于温敏电阻检测温度的误差以及MCU温度AD转化的误差,会在一个特殊时刻,检测到的温度一直在65℃左右浮动。此时继电器开关频率过高,一直不停断开吸合,控制系统极不稳定。
3. 问题解决
实践中发现,虽然实际温度会一直在某个温度点附近跳变,但跳变的范围不会大,比如:在65℃附近跳变数值不会到70℃。因此可以采用如下做法:
- 温度上升过程:温度<65℃,水箱加热;但温度升>=70℃时,停止加热
- 温度下降过程:当温度在70℃回降时,温度<65℃,停止加热。
即在65℃~70℃的温度范围内,对继电器的状态控制,取决于继电器之前的状态。
3.1 软件实现
/*
ret:是否加热标志
Target:目标加热温度
delt:滞环温度允许范围
actual:实际测量温度
heatTube:上一次加热棒打开标志
*/
uint8_t HeatingTemp(uint8_t Target,uint8_t delt,uint8_t actual,uint8_t heatTube)
{uint8_t ret = 0;if(actual < Target) ret = 1; //低于目标温度打开加热棒else if(actual > Target + delt) ret = 0; //高于目标温度断开else ret = heatTube; //中间温度,加热 状态和上一次加热棒状态相同return ret;
}
软件代码类似于滞环的实现,它的优点是便于实现,系统稳定性强。但他同时也受到两点限制:
- 给定数据变化快慢
- 开关区间大小
若上述温度给定数据的变化很快,范围大于给定开关区间大小delt,还是会产生开关频率过高的效果。
多说一些:目前为止遇到的类似问题有:对温度的加热控制,以及类似手机上的充电电量格显示,还有光耦的去抖处理。
工程思想——继电器特性抖动处理相关推荐
- 混沌工程之ChaosBlade(一):建立混沌工程思想
本系列文章的目标,是将混沌工程作为一个入口,窥探整个分布式系统. 混沌工程之ChaosBlade(一):建立混沌工程思想 混沌工程之ChaosBlade(二):原理深度剖析 一.混沌工程是什么 < ...
- 一起涂墙吧,没有艺术细胞我们还有工程思想
并非所有涂在墙上的画都能有资格被称为壁画吧.咖啡厅墙上黑色勾边颜色鲜艳的脸谱.地铁施工现场的隔离铁皮上的宣传画.城中村变压器下水渍浸透的鬼画符一样的涂鸦.恩,还有我们小时候写在地上的"天下太 ...
- 工程思想 ——【程序中的二进制】
前言:程序在计算机中运行时候都是二进制机器码的形式,最初每个二进制码的状态"0"或者"1"代表着一个电子开关的开闭状态.因此软件程序,特别是很靠近硬件或者追求性 ...
- 水泥路肩培土两用机对于工程建设的特性
在对于公路建设工作的制定实施过程中,按照既定的作业任务把目标实现作业目标来进行实现,其中包括这对于路缘石.路肩或排水沟等建设设施的参数和规格形状进行匹配,按照既定任务进行作业是完成项目交付的重要过程. ...
- 大功率继电器的工作原理是什么?解读大功率继电器特性参数
为增进大家对大功率继电器的认识,本文将对大功率继电器的工作原理.大功率继电器的触点形式以及特性参数予以介绍. 继电器" target="_blank">大功率继电器 ...
- python对象的特性_Python对象的思想和特性,python
一.面向对象思想 面向对象编程(Object Oriented Programming,简称OOP),是利用"类"和"对象"来创建各种模型来实现对真实世界的描述 ...
- 数据工程思想与R语言认知
数据工程 数据工程就是将数据科学的工程流程化,用软件工程的思路化数据科学流程. 数据工程四原则 可复现,以人类语言和计算机语言的形式,详细记录每一步计算. 自动化 正交分工,将数据分析任务切分为相互不 ...
- 工程思想——【误差与分辨度】
前言:最近做一个测重有关的项目,通过压力传感器AD获取计算重量值,一直测不准,记录一些想法. 1. 误差 1.1 绝对误差 绝对误差的一般解释是假设一个物理量的测量值为xxx,它的真值为aaa,则 ...
- 工程思想——关于串口通讯协议帧数据的一些想法
前言:之前在学校上计算机网络这门课程时候,被里面的各种协议绕的头晕眼花,总以为这些协议都已经被前辈固定,后生们只要按照之前的协议老老实实收发数据就能解决一切,直到自己也有做东西时要自己编写通讯协议时, ...
最新文章
- 线程同步工具(七)在并发任务间交换数据
- python新旧特性过渡_网站改版时的一种新旧版过渡方案
- 我来重新学习 javascript 的面向对象(part 1)
- 开源压缩算法brotli_Google的Brotli压缩算法,C ++核心准则以及更多新闻
- linux的课程完全看不懂,学习Linux命令神器-看不懂直接给你解释
- [渝粤教育] 西南科技大学 土木工程施工 在线考试复习资料(2)
- 人民银行计算机机房,中国人民银行行计算机中心机房管理详细规定.doc
- foobar2000 for mac(经典音乐播放器)
- tcpreplay发包工具的简单介绍
- 小程序中使用全局样式
- 如何在IDM中设置代理服务器
- 微信小程序图书管理系统
- 制作Windows PE启动镜像命令
- CAD高版本窗体阵列LISP_CAD高版本窗体阵列LISP_AutoCAD高版本怎么把阵列对话框调出来?...
- 交换机远程连接(eNsp)
- 人工神经网络与神经网络,带反馈的人工神经网络
- php自动获取节气对应的年月日_php如何通过日期获取农历、节日、节气?
- ecshop数据结构
- 互补DNA(Complementary DNA)
- redis 键值占用内存分析 RDR(Redis Data Reveal)
热门文章
- iOS 使用FFmpeg
- wpf之MEF+MVVM结合
- activemq之Windows安装
- 主板插槽接口相关释义
- 华夏银行招聘计算机笔试题,2019华夏银行招聘结构化面试试题及答案
- linux发布成服务,linux服务简单部署
- 修改mysql默认字符集为latin1_修改MYSQL默认编码为UTF8
- linux ape,linux把ape+cue格式转换成flac,同时保留曲目信息转载
- python读取csv时keyerror_python – 错误:pandas hashtable keyerror
- fit函数 model_函数式 API