首页 上一页 1 2 下一页 尾页

【求助】西门子scl程序立体仓库 库位号计算 点击:2306 | 回复:24



家JIA

    
  • 精华:0帖
  • 求助:1帖
  • 帖子:1帖 | 0回
  • 年度积分:130
  • 历史总积分:130
  • 注册:2023年12月29日
发表于:2023-12-29 15:10:19
楼主
求助帖50分-未结帖

02a9ebb0a8c412a182dafeff8c662ae.jpg

这是一个立体仓库的平台.每一个仓位上有库位号,选择要实现从高位向地位依次拿物料,别人写了一个排序的scl程序 但是我实在是看不懂 希望有人帮我解释一下那段程序



楼主最近还看过



boblee

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 1回
  • 年度积分:0
  • 历史总积分:92
  • 注册:2014年5月11日
发表于:2023-12-29 15:42:27
1楼

学习,谢谢

jonlson

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 23回
  • 年度积分:297
  • 历史总积分:512
  • 注册:2023年12月26日
发表于:2023-12-29 20:19:17
2楼

代码看不太懂

hui881225

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 6回
  • 年度积分:0
  • 历史总积分:115
  • 注册:2009年2月20日
发表于:2023-12-29 20:20:05
3楼

大神解释下,我也学习一下

晴天白云湖

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 6回
  • 年度积分:104
  • 历史总积分:175
  • 注册:2023年12月30日
发表于:2023-12-30 17:57:24
4楼

楼主能详细解释下吗

Q458751110

  • 精华:0帖
  • 求助:1帖
  • 帖子:78帖 | 1117回
  • 年度积分:43
  • 历史总积分:6729
  • 注册:2006年4月04日
发表于:2023-12-30 19:58:48
5楼

一行中有五列是吗?

 FOR  i := 1 TO 30 DO

IF #库位[i]=1 THEN

 #库位号;=i;

END IF:

END FOR;

//判断哪个库位的接近开关为ON。则库位号为该库位

行 := ((席位号 - 1) / 5)+ 1:        1-5为 第一行,6-10为第二行...

列:=((库位号+4)MOD 5)+1        1/6为一列,2/7为二列  ...

4取行 :=(行 -1)75000;          这个应该是行定位

4取列:-(列-1)115000:            列定位


121111115

  • [版主]
  • 精华:0帖
  • 求助:0帖
  • 帖子:3帖 | 447回
  • 年度积分:622
  • 历史总积分:25855
  • 注册:2016年1月20日
发表于:2024-01-02 18:51:50
6楼

定义了一个数组,数组有30个元素,每个元素对应着一个SQ代号,每个SQ代号对应着PLC的一个I点,当I点有输入时,对应的SQ就为1,下面的FOR循环其实是遍例你三十个元素,哪个为1就去计算它的行列位置,然后根据行列位置计算出脉冲数(每一个库都有自己的行列脉冲数,有这个值可以控制机械手去对应的库进行出入库操作)。

这个程序写的还是相当可以的,不过还有优化空间,比如每一个I点对应一个SQ这有点繁琐,完全可以用个for循环去遍例这30个I点的状态,哪个有输入就把该店作为返回值返回给主函数,在参与下面的for循环去计算位置。

JSdanzi

  • 精华:0帖
  • 求助:0帖
  • 帖子:9帖 | 481回
  • 年度积分:25
  • 历史总积分:8265
  • 注册:2012年9月22日
发表于:2024-01-03 00:26:53
7楼

库位[i]可以认为是  一个触发条件  条件被选择了就计算出在那一行那一列

for就是不停地遍历触发条件那个被置1

列是取得余数  一共应该是5列


Q458751110

  • 精华:0帖
  • 求助:1帖
  • 帖子:78帖 | 1117回
  • 年度积分:43
  • 历史总积分:6729
  • 注册:2006年4月04日
发表于:2024-01-03 15:29:00
8楼

楼主也没回应一下

你猜你猜

  • 精华:0帖
  • 求助:0帖
  • 帖子:103帖 | 930回
  • 年度积分:29
  • 历史总积分:3476
  • 注册:2019年2月15日
发表于:2024-01-25 14:10:47
9楼

6楼解释的很清楚了,学习下,

bx99

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 13回
  • 年度积分:2
  • 历史总积分:16
  • 注册:2015年6月23日
发表于:2024-01-26 15:29:54
10楼

编写这种程序时要注意

要正确计算出库位所在的行和列。例如,行号可以通过席位号除以一定数量后加1得到,而列号可以通过库位号加上一个偏移量后对相同数量取模再加1来计算。

sungirl330

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 17回
  • 年度积分:4
  • 历史总积分:17
  • 注册:2014年6月03日
发表于:2024-01-27 19:55:42
11楼

主要还是库列信息

Q458751110

  • 精华:0帖
  • 求助:1帖
  • 帖子:78帖 | 1117回
  • 年度积分:43
  • 历史总积分:6729
  • 注册:2006年4月04日
发表于:2024-01-27 21:11:44
12楼

立体库的库位号的识别

辩论

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 3回
  • 年度积分:2
  • 历史总积分:3
  • 注册:2014年1月16日
发表于:2024-01-29 13:14:52
13楼

了解并遵守库位编号的规则,这对于准确识别库位至关重要。例如,库位号1-5代表第一行,6-10代表第二行,以此类推。同样,库位列的计算也有其特定的规则,如1/6为第一列,2/7为第二列等。

spirit.wan

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 0回
  • 年度积分:0
  • 历史总积分:0
  • 注册:2015年8月23日
发表于:2024-01-29 13:23:59
14楼

使用正确的计算公式来定位库位。例如,库位的行可以通过((席位号 - 1) / 5) + 1来计算,而库位的列可以通过((库位号+4) MOD 5) +1来确定。这样的计算方式可以确保库位号与实际的物理位置相对应。然后对应下逻辑关系

solk_yt

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 16回
  • 年度积分:0
  • 历史总积分:616
  • 注册:2015年7月15日
发表于:2024-01-29 14:57:33
14楼

在进行库位号的计算前,应该有一个自动化立体仓库的总体规划,这包括对仓库的整体布局、货物流动路径、存取策略等方面的考虑。这样才能熟悉其中的逻辑

闪啊闪

  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 4回
  • 年度积分:1
  • 历史总积分:9
  • 注册:2014年4月19日
发表于:2024-01-29 15:15:49
15楼

引用 "121111115" 的回复,发表在6楼
        内容: 定义了一个数组,数组有30个元素,每个元素对应着一个SQ代号,每个SQ代号对应着PLC的一个I点,当I点有输入时,对应的SQ就为1,下面的FOR循环其实是遍例你三十个元素,哪个为1就去计算它的行列位置...

学习了,感谢

闪啊闪

  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 5回
  • 年度积分:2
  • 历史总积分:10
  • 注册:2014年4月19日
发表于:2024-01-29 15:17:21
16楼

如果库位号是由行号、列号和层号组成的,那么识别程序可能需要分别判断行号、列号和层号的值,然后根据这些值来确定实际的位置。

辛苦

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 4回
  • 年度积分:1
  • 历史总积分:4
  • 注册:2015年3月30日
发表于:2024-01-30 09:41:54
17楼

首先需要了解立体仓库的基本结构和控制需求。

假设立体仓库由多个仓位组成,每个仓位都有一个库位号,并且你想要实现从高位到低位依次取物料的功能。

辛苦

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 5回
  • 年度积分:2
  • 历史总积分:5
  • 注册:2015年3月30日
发表于:2024-01-30 09:42:42
18楼

引用 "121111115" 的回复,发表在6楼
        内容: 定义了一个数组,数组有30个元素,每个元素对应着一个SQ代号,每个SQ代号对应着PLC的一个I点,当I点有输入时,对应的SQ就为1,下面的FOR循环其实是遍例你三十个元素,哪个为1就去计算它的行列位置...

工控箭手

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 5回
  • 年度积分:2
  • 历史总积分:6
  • 注册:2014年12月27日
发表于:2024-01-30 09:45:14
19楼

6楼楼主解释的很详细了,主要还是了解逻辑,然后再去看程序,方便理解

负债赌博

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 0回
  • 年度积分:0
  • 历史总积分:3
  • 注册:2014年3月20日
发表于:2024-01-30 09:48:37
20楼

如果可能的话,使用模拟功能来测试程序的反应。这可以理解程序的正确性和性能。


热门招聘
相关主题

官方公众号

智造工程师
    首页 上一页 1 2 下一页 尾页