请教一下最优的算法

前段时间做了一个红外测温的小程序,是测炙热的钢板温度。我的实现方法是读过数据来之后进行排序,用循环指令,来比较各个温度值,只保留50个最高温度的数值,然后对这50个值求平均。可发现这样做的后果是200的执行周期会很长,大约要30——50MS,这样取的数据就很有限了,因为钢板是移动的,探头是固定的。
 还有一个问题是怎么做能在最大程度上消除测量的误差,大家给点建议,谢谢!

问题补充:
但是满了以后首先要进行比较,可能会最多比较50个数(当然这不是最优的算法),这个占了不少运算量,来确定新来的插入哪个位置,找到后还要把后面的数依次后推,又占了不少的运算量。这个都是循环实现的。感觉就是这个地方的问题。
  可是我又想不出更好的办法啊!

 
 先采集保存数据再处理也是个办法,可是在保存的这段时间内没有数据显示 啊!

最佳答案

不会吧?从你的叙述来看只有一个探头持续不断的进行检测输入数据,那么虽说50个数据比较,但循环还是一个一个的进行的,前50个满后,第51个开始进行与最低温度值的那个数据进行比较,高于就留下低于就推出,依次进行呀,不会慢到30-50ms吧。
 另测量误差的消除有很多种:1.检测头保证精度;2.采样周期的选择适当;3.计算公式的使用。。。等等

提问者对于答案的评价:
谢谢了,我试试

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc355942.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月5日
下一篇 2021年7月5日

相关推荐

  • s7200 PID积分分离代码

    PID积分分离程序代码 最佳答案 你到技术论坛里问问,或直接4008104288问西门子工程师要好些 提问者对于答案的评价:xie

    SIMATIC S7-200 2020年11月1日
  • S7-200 改为中文后,设置PG/PC接口那里还是英文的

    S7-200 改为中文后,设置PG/PC接口那里还是英文的,有强迫症,各位大神支招啊。(C:\Windows\SysWOW64?找到?s7epatdk.dll?复制并修改…

    SIMATIC S7-200 2021年7月5日
  • 两个PLC如何通讯

    问题补充:在工控机上组态一个界面,如何分别显示和区分两块CPU-226的变量地址,如:AIW0、AIW2,两块PLC上都有这两个地址,如何区分? 最佳答案 1.两个S7-200的P…

    SIMATIC S7-200 2021年7月5日
  • TP170B可以控制两台S7-200吗

    公司原有一台设备A用的是S7-200和触摸屏,现在要求新设计一台设备B用S7-200和TP170B,要求在设备B的TP170B上可以完全控制设备A,可以实现吗?有人说这个系统中20…

    SIMATIC S7-200 2021年7月5日
  • EM235 四线制

    当EM235接四线制的电流信号和电压信号,A-短是否和24V电源负短接? 问题补充:还有,对与S7-200AC/DC/继电器型CPU,输出是否可以用24V继电器? 最佳答案 1、需…

    SIMATIC S7-200 2020年11月1日
  • PLC S7-200编程软件

     STEP7 MicroWIN V4.0不支持win8.1吗? 最佳答案 最好用win7、win10的系统详见附图S7-200软件的兼容性列表。S7-…

    2021年7月5日
  • S7200控制欧姆龙伺服电机

    各位前辈    小弟请教一下,我做了一个程序用S7200 CPU224XP 控制欧姆龙伺服电机  在…

    SIMATIC S7-200 2020年11月1日
  • PC与CPU224 通讯

    刚才在单位的机器上连接PLC 想上载 但是一直遇到错误:通信超时。请检查端口号、网络地址、波特率和连接电缆。 请问是什么原因? 我的电缆是U…

    SIMATIC S7-200 2021年7月4日
  • s7 200模块竖起来放可以吗?

    s7 200模块竖起来放可以吗? 最佳答案 没问题 只要你方便,随便怎么放都可以,呵呵  提问者对于答案的评价:OK

    SIMATIC S7-200 2021年7月5日
  • 买设备

    在西门子官网买设备的步骤 最佳答案 4008104288只能帮助你找找在附近的供应商信息,这里只提供技术支持,不销售产品。 提问者对于答案的评价:谢谢

    SIMATIC S7-200 2020年10月31日

发表回复

登录后才能评论