当前位置: 首页 > news >正文

斜坡函数在PLC中的应用

        最近在做项目的时候用到了通过模拟量输出控制设备速度快慢。因为之前大多数是通过端子控制或者是总线的控制方式来控制速度,因此首先尝试了端子控制模拟速度输出。但是由于加速度过大导致设备启动后会快速加速,停止时也会快速减速,不够平滑。在网上查阅了相关资料提到通过斜坡函数来控制,速度会平滑加速和减速。在尝试和改进了斜坡函数设备按照需求达到了我的需求,在加速和减速过程中都可以很平滑的加/减速了。

        先谈下我的控制原理,我的控制方式和参考文章的控制方式不一样。参考文章的控制原理设置初始值、目标值及斜坡时间。斜坡时间的单位为秒,其内部使用延时接通定时器指令,时基为100ms。斜坡时间乘以10即为定时器的启动次数。通过计算初始值与目标值的差值,除以计时器的启动次数,即可算出每次定时器计时达到时应当增加的数值单位。我的控制原理也是设置初始值、目标值及斜坡时间。斜坡时间的单位为秒,其内部使用延时接通定时器指令,时基为100ms。斜坡时间乘以10即为定时器的启动次数。不过计算方式是在刚开始时先起始速度、目标速度和斜坡时间确定斜率,然后通过斜坡时间计算当前的速度。即y(目标速度)=k(斜率)x(斜坡时间)+b(起始速度)。很简单吧,我觉得这样更容易理解和计算。在项目中也尝试了完全可以应用。

        下面附上源程序:

该程序可以实现从起始速度到目标速度随着斜坡时间的大小而变化快慢,时间越短,变化越快。提是保证变频器的加速度足够大,保证在斜坡时间内足够达到计算速度(一般都可以满足)。起始速度可以是0,也可以是任意数值。

参考:西门子SCL编程实例——斜坡发生器(基于定时器)

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 使用Adobe Photoshop CS5给图片加水印
  • windows中如何进入redis控制台?
  • Query @azure/openai with images?
  • 【无线通信发展史③】万有引力定律的推导前奏1.0,带你先了解离心力—向心力的知识点
  • sqlserver给整张表修改某一字段为uuid
  • GPT-4o:开启多模态AI识别新纪元
  • 那些年我们一起遇到过的奇技淫巧
  • docker部署zookeeper和kafka
  • 图论(二):图的度分析——度数bar图度数等级图度数直方图根据度数渲染节点颜色
  • 合并多行数据
  • 记录一个困扰两天的bug,vue3代码用vite打包运行出错的问题
  • 哈希表 -四数相加II
  • 真的只有“天赋异禀”的人才能学好人工智能吗?
  • JWT入门
  • <数据集>路面坑洼识别数据集<目标检测>
  • Android 架构优化~MVP 架构改造
  • CentOS7简单部署NFS
  • express.js的介绍及使用
  • in typeof instanceof ===这些运算符有什么作用
  • java2019面试题北京
  • vue数据传递--我有特殊的实现技巧
  • 工程优化暨babel升级小记
  • 关于List、List?、ListObject的区别
  • 基于Android乐音识别(2)
  • 开发了一款写作软件(OSX,Windows),附带Electron开发指南
  • 如何优雅地使用 Sublime Text
  • 十年未变!安全,谁之责?(下)
  • 再次简单明了总结flex布局,一看就懂...
  • MiKTeX could not find the script engine ‘perl.exe‘ which is required to execute ‘latexmk‘.
  • 《码出高效》学习笔记与书中错误记录
  • python最赚钱的4个方向,你最心动的是哪个?
  • 阿里云IoT边缘计算助力企业零改造实现远程运维 ...
  • 回归生活:清理微信公众号
  • ​DB-Engines 12月数据库排名: PostgreSQL有望获得「2020年度数据库」荣誉?
  • ​Python 3 新特性:类型注解
  • ​一些不规范的GTID使用场景
  • ​直流电和交流电有什么区别为什么这个时候又要变成直流电呢?交流转换到直流(整流器)直流变交流(逆变器)​
  • (6) 深入探索Python-Pandas库的核心数据结构:DataFrame全面解析
  • (c语言)strcpy函数用法
  • (ros//EnvironmentVariables)ros环境变量
  • (附源码)springboot 房产中介系统 毕业设计 312341
  • (接口封装)
  • (免费领源码)python#django#mysql公交线路查询系统85021- 计算机毕业设计项目选题推荐
  • (一)使用Mybatis实现在student数据库中插入一个学生信息
  • (转)拼包函数及网络封包的异常处理(含代码)
  • (自用)网络编程
  • .net core 依赖注入的基本用发
  • .NET Core中Emit的使用
  • .Net MVC4 上传大文件,并保存表单
  • .NET 给NuGet包添加Readme
  • .NET/C# 判断某个类是否是泛型类型或泛型接口的子类型
  • .net遍历html中全部的中文,ASP.NET中遍历页面的所有button控件
  • .NET中使用Redis (二)
  • .vimrc 配置项
  • @Controller和@RestController的区别?