zmrs163
级别: 略有小成
精华主题: 0
发帖数量: 340 个
工控威望: 488 点
下载积分: 1396 分
在线时间: 310(小时)
注册时间: 2017-06-12
最后登录: 2024-04-11
查看zmrs163的 主题 / 回贴
楼主  发表于: 2022-01-18 10:27
本人比较喜欢研究算法,大家在编程时有什么算法相关的问题可以留言下,我会尽力提供解决方案或程序
梦雨天涯
微信hui530527   &
级别: 网络英雄
精华主题: 0
发帖数量: 3725 个
工控威望: 7068 点
下载积分: 12849 分
在线时间: 2466(小时)
注册时间: 2016-10-31
最后登录: 2024-04-19
查看梦雨天涯的 主题 / 回贴
1楼  发表于: 2022-01-18 11:49
图片:
既然大佬发话了,那我就捧场一下,入图片所示,要求只有一个编码器(AB相),入口有一个感应,其他的地方都没有了,有N个工位,动作你可以理解为每个工位吹气一段时间。然后普通电机控流水线,编码器安装在主动轮上,对应流水线主动轮一圈,编码器就一圈
微信hui530527      b站账号,梦雨天涯1991
请不要随意加我,不会随便通过。QQ群942493953
梦雨天涯
微信hui530527   &
级别: 网络英雄
精华主题: 0
发帖数量: 3725 个
工控威望: 7068 点
下载积分: 12849 分
在线时间: 2466(小时)
注册时间: 2016-10-31
最后登录: 2024-04-19
查看梦雨天涯的 主题 / 回贴
2楼  发表于: 2022-01-18 11:52
第2个程序,要求在触摸屏可以替换点位,Y70到Y77是备用点,Y0到Y67是正在使用的点,要求如下假设Y10点坏了,Y70-Y77可以替换(触摸屏直接写入数字)
微信hui530527      b站账号,梦雨天涯1991
请不要随意加我,不会随便通过。QQ群942493953
梦雨天涯
微信hui530527   &
级别: 网络英雄
精华主题: 0
发帖数量: 3725 个
工控威望: 7068 点
下载积分: 12849 分
在线时间: 2466(小时)
注册时间: 2016-10-31
最后登录: 2024-04-19
查看梦雨天涯的 主题 / 回贴
3楼  发表于: 2022-01-18 11:55
第3个,平常用到的分割器转盘8工位的,普通电机控制,假设有一个工位换掉了,但是人工没及时查看。要求,同一工位如果连续出现3次不合格,那么就要报警停机,还有一个连续3个工位报警也要停机,如果在工作过程中,遇到不合格,也要有重测次数,比如,一个气缸下降到转盘,有模拟量输出返回,如果不合格立马退回,然后再次检测。
微信hui530527      b站账号,梦雨天涯1991
请不要随意加我,不会随便通过。QQ群942493953
梦雨天涯
微信hui530527   &
级别: 网络英雄
精华主题: 0
发帖数量: 3725 个
工控威望: 7068 点
下载积分: 12849 分
在线时间: 2466(小时)
注册时间: 2016-10-31
最后登录: 2024-04-19
查看梦雨天涯的 主题 / 回贴
4楼  发表于: 2022-01-18 11:58
第4个,字符串处理的时候,常常遇到字符串中间段有H00的,字符串就停止执行,好比如字符串抽取指令,遇到中间有H00的就默认已经结束了。那么问题来了,一串字符串12345678,怎么提取2345678(不得用字符串命令,不可靠,遇到H00就不行)
微信hui530527      b站账号,梦雨天涯1991
请不要随意加我,不会随便通过。QQ群942493953
梦雨天涯
微信hui530527   &
级别: 网络英雄
精华主题: 0
发帖数量: 3725 个
工控威望: 7068 点
下载积分: 12849 分
在线时间: 2466(小时)
注册时间: 2016-10-31
最后登录: 2024-04-19
查看梦雨天涯的 主题 / 回贴
5楼  发表于: 2022-01-18 12:02
第5个,比如有一个产品,数值A是90,任意N个盒子,假设1-3为1号盒子,4-8为2号盒子,盒子的数字不规则等分,但是从小到大,那么怎么快速分出这个数值A在哪一个盒子?要求不得一个个盒子去比较,浪费PLC扫描周期(如果是N等于10000,你想想程序每次比较10000个还不吐血)
微信hui530527      b站账号,梦雨天涯1991
请不要随意加我,不会随便通过。QQ群942493953
梦雨天涯
微信hui530527   &
级别: 网络英雄
精华主题: 0
发帖数量: 3725 个
工控威望: 7068 点
下载积分: 12849 分
在线时间: 2466(小时)
注册时间: 2016-10-31
最后登录: 2024-04-19
查看梦雨天涯的 主题 / 回贴
6楼  发表于: 2022-01-18 13:36
第6,假设有N个通讯的仪器,分别PLC通道1要发几个指令比如,01,02,03,04,要求如下:谁先准备好就先开始发送,仪器接到命令后,返回该仪器测试到内容。比如1号准备好了,就发送01,那么这个过程中其他的站号不得动作,需要等到他回复信号后才允许下一个动作……如果1号每次都准备特别快,那么他可以继续完成02,03的动作,所有返回的数据需要有特定的D来存储,为了后面数据进行比较,
微信hui530527      b站账号,梦雨天涯1991
请不要随意加我,不会随便通过。QQ群942493953
梦雨天涯
微信hui530527   &
级别: 网络英雄
精华主题: 0
发帖数量: 3725 个
工控威望: 7068 点
下载积分: 12849 分
在线时间: 2466(小时)
注册时间: 2016-10-31
最后登录: 2024-04-19
查看梦雨天涯的 主题 / 回贴
7楼  发表于: 2022-01-18 13:41
第7,假设有1-5个子程序,在触摸屏升任意定义他们的动作先后,比如5,4,1,2,3,2,1(步数不确定,假设N个,但不会超过100)可重复动作(1号就重复了两次),要求程序不得超过300步,却简单越好
微信hui530527      b站账号,梦雨天涯1991
请不要随意加我,不会随便通过。QQ群942493953
天空流星
SZ-CL
级别: 网络英雄
精华主题: 0
发帖数量: 542 个
工控威望: 6163 点
下载积分: 13905 分
在线时间: 525(小时)
注册时间: 2008-03-17
最后登录: 2024-04-18
查看天空流星的 主题 / 回贴
8楼  发表于: 2022-01-18 14:05
图片:
图片:
引用
引用第2楼梦雨天涯于2022-01-18 11:52发表的  :
第2个程序,要求在触摸屏可以替换点位,Y70到Y77是备用点,Y0到Y67是正在使用的点,要求如下假设Y10点坏了,Y70-Y77可以替换(触摸屏直接写入数字)


默默的把手上的工程截图,这个是不是你想要的
zmrs163
级别: 略有小成
精华主题: 0
发帖数量: 340 个
工控威望: 488 点
下载积分: 1396 分
在线时间: 310(小时)
注册时间: 2017-06-12
最后登录: 2024-04-11
查看zmrs163的 主题 / 回贴
9楼  发表于: 2022-01-18 14:21
1.我的理解是流水线最多200个轮胎,只在入口检测,到对应位置打开对应输出?首先标定各个输出与入口的距离存入数组(假设为p1,p2,p3...),然后整个线体一圈假定N个脉冲,计数器为环形计数器最好,不是的话需要程序取余数但是可能溢出会导致取余数不准。当入口感应到轮胎则记录当前编码器数字假设为P,然后就得到了每个输出输出时的位置(P+P1)MOD N,当当前值大于等于此值时输出打开一段时间。上述可以构造一个200*40的数组实现,然后输出过后可以再设置个标志位,当所有标志位ON之后就可以清除这个轮胎的位置数据了。
2.可以理解成原本Y0对应Y0,Y1对应Y1,。。。程序可以先做一次映射,比如Y0--M0,Y1--M1。那么原本的映射关系可以看成是M0=Y0*1+Y1*0+....所以所要做的是构建一个单位矩阵,对角线全为1,映射关系就是矩阵的乘积,所以输入数字改变映射关系就是改变这个矩阵,也就是每一行1的位置,这个应该就没啥难度了吧,这样可以实现全输出任意映射的切换。
3.没太看懂题目?感觉用个存储1--8的8个寄存器队列,移动一次先出后入一次记忆工位,产品对应关系,然后另有8个寄存器存储报警。报警发生时,现根据队列找到对应关系然后存入报警信息不就好了?
4.怎么提取,输入起始位置和长度提取?要是我就直接整个字符串异或0b1000 0000,因为ASC范围也就到0X7F,这样把H00转化成合法字符串用字符串指令操作好再异或回来。
5.二分法,思路很简单只不过写的时候细节很多。
zmrs163
级别: 略有小成
精华主题: 0
发帖数量: 340 个
工控威望: 488 点
下载积分: 1396 分
在线时间: 310(小时)
注册时间: 2017-06-12
最后登录: 2024-04-11
查看zmrs163的 主题 / 回贴
10楼  发表于: 2022-01-18 14:36
6.看不懂。。准备好是输入点信号?其他站号不得动作啥意思,继续完成后面的动作又是啥意思。。
7.变址循环不就好了,细节太少导致问题可难可简单。比如说先开始的动作一定要完成了才能进行下一步吗,还是先开始就行,只要在下个相同动作开始前完成就行。还有你的输入是一个不定长的数组吗,动作完成后有信号返回吗类似等等。
天空流星
SZ-CL
级别: 网络英雄
精华主题: 0
发帖数量: 542 个
工控威望: 6163 点
下载积分: 13905 分
在线时间: 525(小时)
注册时间: 2008-03-17
最后登录: 2024-04-18
查看天空流星的 主题 / 回贴
11楼  发表于: 2022-01-18 14:50
图片:
图片:
图片:
引用
引用第7楼梦雨天涯于2022-01-18 13:41发表的  :
第7,假设有1-5个子程序,在触摸屏升任意定义他们的动作先后,比如5,4,1,2,3,2,1(步数不确定,假设N个,但不会超过100)可重复动作(1号就重复了两次),要求程序不得超过300步,却简单越好

你是不是在偷窥我工作啊