浔之漫智控技术(上海)有限公司西门子一级代理商
西门子授权代理商 , 西门子一级代理商 , 西门子PLC代理商
广东肇庆西门子数控系统代理商

 


我公司大量现货供应,价格优势,*

1、SIMATIC S7系列PLC:S7-200/S7-200ART/S7-1200/S7-300/S7-400/ET200/S7-1500

  2、逻辑控制模块 LOGO!230RC、230RCO、230RCL、24RC、24RCL等

  3、SITOP系列直流电源 24V DC 1.3A、2.5A、3A、5A、10A、20A、40A

  SIEMENS HMI屏:TD200/TD400C/ART700IE/ART1000IE/TP700/TP1200/TP900/TP1500

  SIEMENS 交、直流传动装置

  1、 交流变频器及伺服:420/430/440、G120、G110、V10、V20、V60、V70、V80、V90及6SE70系列(FC、VC、SC)

  2、全数字直流调速装置 6RA23、6RA24、6RA28、6RA70、6RA80系列

  SIEMENS 数控伺服

  1、数控:840D、802S/C、802SL、828D、801D :6FC5210,6FC6247,6FC5357,6FC5211,6FC5200,6FC5510

  2、伺服: 611A/U/D:6SN1123,6SN1145,6SN1146,6SN1118,6SN1110,6SN1124,6SN1125,6SN1128

  3、伺服:S120: 6SL304、6SL3210、6SL3130、6SL3055、6SL3054

  SIEMENS

  西门子自动化与驱动产品合作伙伴

西门子一级代理商产品远销:

  1.华北地区:北京、天津、河北、内(3个市,2个省)。

  2.东北地区:辽宁、吉林、黑龙江、大连,齐齐哈尔(3个省、2市)。

  3.华东地区:上海、江苏、浙江、安徽、福建、江西、山东、(7个省)。

  4.华中地区:河南、湖北、湖南、广东、广西、海南、深圳(7个省、市)。

  5.西南地区:重庆、四川、贵州、云南、(5个省、市)。

  6.西北地区:陕西、甘肃、青海、宁夏、、山西、(6个省、区)。

  S7-1200新推出来, 肯定会有一些新意的地方,同时也有一些不完善的地方。 笔者觉得应该列出两个贴子让广大用户把一些使用心得写出来, 这样能使产品更早的完善,大家也可以提提改进意见,甚至发现一些上的BUG

  来讲讲西门子S7-1200PLC一些优点:

  1、统一了编程平台,以后用西门子的PLC都一样,这样有利于推广。

  2、 符号表里可以允许重叠寄存器,比如我定义了X1 :INT: MW0 ;X2:INT:MW2 , X3:DWORD:MD0 ,这在一些运行中会比较方便些,或许是西门子考虑到全符号寻址的需求吧。

  3、里的每一个NetWork可以收起来,不占多少空间,这样当network较多时,查找程序比较方便。

  4、一些硬件上的改进当然也是好的,比如串口模块,模拟量模拟的分辨率也了。 期望后续再出一些新的模块。

  5、高速脉冲定位控制相比S7-200有了很多的, 可以说以现在的市场来讲200的高速脉冲是个杯具(当然毕竟200的年代太久远了)。

  6、对于高速计数器的使用,也比200要简化一些,不必须再啰嗦地设置一些控制字了,这对初学者是个福音。

  7、LAD编程提供了“横向串连”功能,比如我要置位Q0.0、Q0.2、Q0.4,可以在一条水平线上串起来,这样节省了纵向空间(在200的编程里则必须是纵向排列的),暂时也就写这么多,想起来了再写,也希望大家补充,谢谢!

  再列一下在中的一些问题或者改进建议:

  1、当你修改某一个程序块后, 如果单独下载该块,那么使用的时间很长,甚至达一分钟以上。 如果你选择下载全部块,反而下载时间会短很多,在20秒以内!不知道S7-1200的下载机制造成的?

  2、编程里的“符号表”不能象S7-200里一样由用户新建组别,不方便。 在S7-200里我一般都分几个区,比如I区,Q区,M区,V区等,或者以程序里使用的功能分区。 但是在1200里所有的符号变量全部堆在一块,变量较多时查找很不方便。

  3、发现一个BUG: 由于定时器要占用DB,而我的程序使用定时器较大,所以我就将所有的定时器一个FB里调用,这样使用多重背景。 问题是,当我建立了一个比如TON1 IEC_Timer 的静态变量, 然后选中它,,结果粘贴出来的结果为TON1_1 IEC_TIMER,大家注意,前面是T大写后面全是小写, 而粘贴的结果TIMER全为大写! 然后将程序下载到PLC内,运行报错!提示什么NIL_PTR有问题!

  4、了运动控制的回零功能,觉得这个回零机制不太合理。 假设电机驱动丝杆直线运行, 中有三点A--B--C , 其中B区域点为零点开关。我组态为正向逼近, 开关检测为“左(负)边”,

  1)如果开始回零时负载处于AB之间, 那么先以高速沿AB方向搜索原点,当检测到B原点后,速度先停止再改为低速反向按BA方向运行,直到B处原点没有了,再以低速朝AB方向运行, 再检测到B原点开关立即停止,回零完成。这个没问题。

  2)如果开始回零时负载处于B处(即回零开始时原点开关有), 那么也会先以高速朝AB方向运行,直到B没有了, 再反向…… 然后也和1)一样。 我觉得这种回零就有问题! 既然回零开始时零位开关已经有了,那么就应该直接反向按BA方向走,当原点丢失后再以低速朝AB方向就可以找到零位了! 实事上在我的里就只能按照我说的去回零,否则机械上就会发生碰撞! 现在我只能在回零时先由程序判断零位开关是否有, 如果有那么先以增量定位让负载朝BA方向直到没有原点开关后,再启动回零程序! 这样就麻烦多了!

  5、当在我FC里新那TEMP变量较多时,编译没问题,下载到PLC运行就出错, 好像我是建立了四个INT,四个DINT,四个REAL, 不知道1200为每个块能分配多少字节的临时变量啊?象S7-200就是个(其中四个用于)。 按照这个量的话,我建得也不多啊。

  6、使用以太网通讯, 我在一个FB块内调用TSEND_C和TRCV_C,当使用多重背景时,结果右键TSEND_C,“属性”选项是灰色的! 也就是说TSEND_C或者TRCV_C不能使用多重背景! 只能每一每指令赋值一个DB块。

  7、太容易崩溃了!经常莫名其妙地要求重启!更要命的是你打开某一个块它就提示要重启,可是打开别的块就没问题! 没办法只好把这个块删掉!重新编写一遍又好了!头大了!已经发生了好多次这种情况了!

  8、LAD编程下不能提供对“位”进行异或运算,而在FBD则可以!

  9、当FB或者DB选择为纯符号编程时,不能显示,这样我用第三方的屏没法和它通讯! 可是当我选择为的时

7、太容易崩溃了!经常莫名其妙地要求重启!更要命的是你打开某一个块它就提示要重启,可是打开别的块就没问题! 没办法只好把这个块删掉!重新编写一遍又好了!头大了!已经发生了好多次这种情况了!

  8、LAD编程下不能提供对“位”进行异或运算,而在FBD则可以!

  模拟量转换的相关设置

  S7-1200(1214C)内部集成了2路模拟量输入通道,分别为通道0和通道1,也就是可以同时接收并处理两个传感器输入的模拟,对应的为IW和IW66(长度为一个字,16位),在TIA PROTAL中选中PLC的“常规”—“AI”标签项可以进行查看和设置。

  浅谈西门子S7-1200PLC的模拟量转换,附实例演示

  S7-1200PLC模拟量转换的工作原理

  假设PLC的AI0口外接了一个温度传感器,传感器将测得的温度值转换为一个范围为0~10V的连续电压输入给PLC。模拟量经过PLC内部的A/D转换后被转换成了范围0~27648的数字量并存储在特定的寄存器中。具体的转换流程如下图所示。

  浅谈西门子S7-1200PLC的模拟量转换,附实例演示

  如何将模拟量输入转换的数字值还原成对应的物理量?

  例:某个压力传感器的量程为0~0.1MPa,转换成对应的电压为0~5V,设转换后IW中的数值为N,尝试求以Pa为单位的压力值。

  解:S7-1200PLC默认的模拟输入电压范围是0~10V,转换成数字的范围是0~27648,因为此压力传感器输出电压范围是0~5V,所以转换的数字范围是0~13824。压力传感器的测量压力范围是0~0.1MPa,由此可推导出公式,将电压值还原成以Pa为单位的压力值并将结果存储于寄存器MD30中。

  电压转换成数字后存入IW的数值为N

  浅谈西门子S7-1200PLC的模拟量转换,附实例演示

  在博途中编写对应的PLC程序如下:

  在编写梯形图程序时有以下两点需要特别注意:

  1)因为PLC执行除法指令时会丢掉余数而只保留商值,这样会影响计算的精度,所以在编写梯形图程序计算压力值时要注意先乘后除。

  2)IW中的数据类型为整型(INT),该值乘以100000后其结果会超出int的范围,所以必须先应用CONV指令将数据类型转换为DInt。

展开全文