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

(已结束)2010-9-04-工控擂台-PLC编程-取出16位存储器的部分数据 点击:1534 | 回复:33



饶歌

    
  • 精华:4帖
  • 求助:0帖
  • 帖子:330帖 | 6019回
  • 年度积分:0
  • 历史总积分:23673
  • 注册:2010年2月20日
发表于:2010-09-01 15:13:39
楼主

把16位存储器存储的ASCII码(0-9)的第2位取出来并转换为10进制数——例如ASCII码34,取出第2位就是4。
这个应用很有意义,例如取读到的条形码的第几位。

 

 

下周末结贴,9个最优回帖分别获得20MP、10MP、10MP、10MP、20积分、20积分、20积分、20积分、20积分!

MP介绍:gongkongMP即工控币,是中国工控网的用户积分与回馈系统的一个网络虚拟计价单位,类似于大家熟悉的QB,1个MP=1元人民币。

MP有什么用?兑换服务:以1个MP=1元来置换中国工控网的相关服务。 兑换现金:非积分获得的MP可兑换等值现金(满100MP后、用户可通过用户管理后台申请兑换)。





莫子辰

  • 精华:1帖
  • 求助:11帖
  • 帖子:20帖 | 939回
  • 年度积分:0
  • 历史总积分:5186
  • 注册:2010年5月12日
发表于:2010-09-04 16:51:08
21楼

各位的程序都不错,学习学习

 

莫其麟

  • 精华:14帖
  • 求助:0帖
  • 帖子:120帖 | 5688回
  • 年度积分:0
  • 历史总积分:29157
  • 注册:2004年2月27日
发表于:2010-09-04 18:09:08
22楼
    我未用过HEX指令(ASCII转换为HEX),不知下图的程序是否可以,D10为所求值。
    M1161断开时,为16位转换模式(图1);M1161接通时,为8位转换模式(图2)。当仅取一位ASCII码时(低位),两者结果相同。


    PLC为台达DVP-ES2,编程软件为WPLSoft。当PLC运行时,M1000是一直接通的,M1001是一直断开的。H3334,是ASCII码34的十六进制形式。
    如果要取ASCII码的高位(题中的3),则可利用逻辑与指令WAND屏蔽掉低位,再做适当转换。

红雪

  • 精华:37帖
  • 求助:0帖
  • 帖子:120帖 | 5224回
  • 年度积分:0
  • 历史总积分:26236
  • 注册:2005年10月20日
发表于:2010-09-04 23:31:53
23楼
引用yuanle 的回复内容:首先:与16进制数0F00做与操作,得到0400,然后,向右移动8位,得到0004.

Good Luck



丁胜志

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 236回
  • 年度积分:2
  • 历史总积分:1712
  • 注册:2007年11月05日
发表于:2010-09-05 08:19:43
24楼

楼主的意思好像是读取第三方设备数据,可以把它挂在网络上,如proibus,通过过程印象PI、PQ读写,再把它转换成需要的数据格式。

LIUXD6909

  • 精华:2帖
  • 求助:11帖
  • 帖子:145帖 | 5530回
  • 年度积分:1300
  • 历史总积分:29990
  • 注册:2008年4月27日
发表于:2010-09-05 15:55:46
25楼
都不失为好方法,向各位学习了。

海阔天空

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 17回
  • 年度积分:0
  • 历史总积分:141
  • 注册:2005年1月14日
发表于:2010-09-06 01:04:01
26楼

在制造企业实际运用很广!!大部分都是采用条码自动识别!!

少江

  • 精华:0帖
  • 求助:1帖
  • 帖子:4帖 | 121回
  • 年度积分:0
  • 历史总积分:393
  • 注册:2010年2月04日
发表于:2010-09-07 16:09:57
27楼
引用老菜鸟 的回复内容:


方法1:也就是yuanle和abysmal说到的方法。把该存储器与FFH(也就是00FFH)作与操作,得到ASCII的第2位数据——存储器的低8位数据,也就是34。(说明:任何一个二进制数与相同位数的全1二进制数做与操作,得到的都是这个数本身;任何一个二进制数与相同位数的全0二进制数做与操作,得到的都是0。因此该方法的原理就很容易明白了。如果要取高8位,那么把该16位数据和FF00H作与操作后,还要右移8位才可以得到。)

        然后把得到的低8位ASCII数据减去48或者30H,就是10进制数了

为什么是减48呢?能更详细点吗?如果那个数字不是34要怎么减,减多少?上学时学了一点进制转化的皮毛,早忘完了。谢谢

诚心求教

 

老菜鸟

  • 精华:22帖
  • 求助:0帖
  • 帖子:301帖 | 8609回
  • 年度积分:0
  • 历史总积分:24924
  • 注册:2003年6月15日
发表于:2010-09-12 18:02:31
28楼
你看13楼的ASCII码表,对于0-9的数字,ASCII码与10进制的差别就是16进制的30H,也就是10进制的48。

饶歌

  • 精华:4帖
  • 求助:0帖
  • 帖子:330帖 | 6019回
  • 年度积分:0
  • 历史总积分:23673
  • 注册:2010年2月20日
发表于:2010-09-12 19:51:44
29楼
20MP获得者:老菜鸟                 deshengwu
10MP获得者:莫其麟                 QLIN
                           abysmal             abysmal 
                           yuanle                 drluqi
20积分获得者:工控十年           工控十年

饶歌

  • 精华:4帖
  • 求助:0帖
  • 帖子:330帖 | 6019回
  • 年度积分:0
  • 历史总积分:23673
  • 注册:2010年2月20日
发表于:2010-09-12 19:53:15
30楼
老菜鸟老霸道了。。。。。。。。。

Hoteam

  • 精华:3帖
  • 求助:0帖
  • 帖子:336帖 | 23748回
  • 年度积分:0
  • 历史总积分:70347
  • 注册:2007年4月05日
发表于:2010-09-12 20:33:00
31楼
擂台哥

老菜鸟

  • 精华:22帖
  • 求助:0帖
  • 帖子:301帖 | 8609回
  • 年度积分:0
  • 历史总积分:24924
  • 注册:2003年6月15日
发表于:2010-09-12 20:36:09
32楼
嘿嘿。。。。。。。。。

老菜鸟

  • 精华:22帖
  • 求助:0帖
  • 帖子:301帖 | 8609回
  • 年度积分:0
  • 历史总积分:24924
  • 注册:2003年6月15日
发表于:2010-09-16 17:14:33
33楼

今天看到一个问问题的帖,就是该擂台的典型应用。

从一串DATA中选择输出某一位,应该怎样做呢?

http://www.gongkong.com/webpage/forum/201009/2010091514575800002-1.shtml


热门招聘
相关主题

官方公众号

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