醉湮邃虞
醉湮邃虞话老黑
级别: 略有小成
精华主题: 0
发帖数量: 229 个
工控威望: 409 点
下载积分: 1577 分
在线时间: 209(小时)
注册时间: 2009-01-16
最后登录: 2015-03-18
查看醉湮邃虞的 主题 / 回贴
楼主  发表于: 2010-01-23 00:42
    偶然想起以前的北京大杂院,虽然条件不是太好,但邻里之间好似农村的一个村子一样,彼此见面时,说句:“吃了嘛!您呐!”算是一声问候,同院的孩子们经常在一起玩耍,想那“远亲不如近邻”也缘于这大杂院邻里们的互相照顾,而现在大家都住进了楼房,门窗紧闭,彼此难见。前些年搬入楼房,只知道同层有8户人家,碰到同下电梯的,也不知道是来串门的还是本层居住的。
    开始时的大杂院(非四合院)大都是某单位盖的职工宿舍,清一色的样式,房间大小都一样,大的院有上百间,这上百间一般按1.2.3....等自然顺序排列,作为各个房间的识别。找人嘛也就按照这个顺序去找,比如张三住28号,李四住88号等等,随着岁数的增长,9号职工王五结婚生子,不得不向单位再申请一套房子,那时的单位真好,就把临近的10号分配给了他,这样一来王五就占有两套房子了,而张三不但结婚生子,还借这小科长权力将自己的老父亲和妹妹也弄到了这个单位,又几经周折,把29,30,31号房间也一起弄到了手,那轻官鄙钱的赵一,一直过着清苦快乐的生活住在2号。他们的地址是:
2号  赵一
9号  王五 两间
28号 张三 4 间
88号 李四
    虽然期间有王五、张三房间数量的变动,但并不影响其他人的地址,不影响找人的方便性,因为他们的地址是以每个单间房来编号的,虽然有跨越,王五占9、10号,张三占28、29、30、31号。


    浏览论坛中有不少朋友问PLC寻址的问题,就突然想起这大杂院中房间号码的排列。PLC内存中最基本控制单位是位,每8位组成一个字节,PLC中,就是以字节为单位进行地址编号的。每个字节相当于这大杂院中的一间间小房屋,用VB表示。两个字节的数据称为字,相当于上面的王五,双字或实型数据占有四个字节,相当于上面的张三。因此张三等的地址也可这样来表示

VB2    一看就知道是,2号房间,一间
VW9    这个是9号房间,两间
VD28    这个厉害,28号间,有四间,肯定是官
VB88    88号房间,一间,苦啊。

因为是以字节为顺序来排列,因此
VW9,包含有,VB9,VB10,两个字节
VD28,包含有VB28,VB29,VB30,VB31四个字节,
若使用了VD28,无特殊情况,就不能再出现VD29,VW30,VB31等等,这会造成地址重叠。

上述情况仅适用于西门子PLC,在维纶触摸屏中的地址却是另一种排列方式。
比如可以使用VW1,VW2,VW3等等,不会造成地址重叠,但是若是双字就有重叠问题了。
一般来讲,基本地址排列的位数也就是计算机的位数,意思就是说
200系列PLC是8位机,触摸屏幕是16位机。
[ 此帖被醉湮邃虞在2010-01-23 00:48重新编辑 ]
棋牌比赛免费得实物,闲暇好去处
http://www.jj.cn/indexTG.html?promoterid=108502812
醉湮邃虞
醉湮邃虞话老黑
级别: 略有小成
精华主题: 0
发帖数量: 229 个
工控威望: 409 点
下载积分: 1577 分
在线时间: 209(小时)
注册时间: 2009-01-16
最后登录: 2015-03-18
查看醉湮邃虞的 主题 / 回贴
1楼  发表于: 2010-01-27 22:20
     &   和   *

    这大杂院传达室有个老头,负责送报纸,假如15-99号都有订报纸,传达室老头负责送报纸,每送完一次报纸,就回传达室做登记,假如报社去调查发放情况,只需要在传达室看看,就知道发放情况,如果登记够详细,甚至接收人姓名、年龄,等都可一目了然。其登记内容可能是:
          房间号-房主姓名-年龄-................-报纸发放情况
     只要看到这个表格就很清楚,从这里可以知道老头儿下一张报纸该送哪个房间,若数据够详细还可了解其他情况。

在程序中:
     &  符号是指针赋值,相当于登记簿上规划好的表格,
          *   符号是地址中的内容,相当于表格中填写的数据,发放情况,更详细信息也可簿中相应的栏中找到,

     在很多程序中更需要类似这样的处理,比如AIW0/AIW2/AIW4/AIW6..........AIW48,共25个的温度传感器即时温度值,程序要求,把这25个输入温度值,直接传送到.aqw0/aqwq/aqw2.............aqw48来调节风门。

    至少有两种编程方法:
其一
使用直接语句
movw aiw0,aqw0    
movw aiw1,aqw1,
....
movw aiw24,aqw24

需要有25句,如果有1000个数据,则需要1000句。

其二
使用指针,假设使用M0.0,进行控制数据转移,vw100转移到vw1100中,.....vw148转移到vw1148中。

指针初始化:
LD     M0.0
EU
MOVD   &VB100, VD0
MOVD   &VB1100, VD4
MOVW   0, VW8

数据处理
LD     M0.0
MOVW   *VD0, *VD4

指针修正
LD     M0.0
+D     2, VD0
INCW   VW8

处理结束
LD     M0.0
AW>=   VW8, 25
R      M0.0, 1

    可以看出,如果使用指针,只要经过指针初始化,数据处理后修正指针,给定结束条件,则可处理任意数量,不论是1句还是1000句,都由同一程序完成,修改一下初始化赋值和结束条件,就可任意传送。因此需要处理的数据量小时,使用直接数据较为直观,数据量大时,使用指针编程更方便。
  前者在一个扫描周期内完成,对扫描周期影响很大
  后者一个扫描周期仅传送一组数据,多个扫描周期才能完成,完成操作基本不影响扫描周期,不过传输速度稍慢。

还真是无聊,没人理你就得了呗,还弄个老头儿出来,还......还还看门的。
[ 此帖被醉湮邃虞在2010-01-28 09:59重新编辑 ]
棋牌比赛免费得实物,闲暇好去处
http://www.jj.cn/indexTG.html?promoterid=108502812