银川西门子(中国)授权总代理商

供应商
浔之漫智控技术-西门子PLC代理商
认证
报价
666.00元每件
手机号
15221406036
经理
聂航
所在地
上海市松江区石湖荡镇塔汇路755弄29号1幢一层A区213室
更新时间
2024-05-08 07:10

详细介绍

银川西门子(中国)授权总代理商

高处理速度;

例如,在 cpu 315-2 dp 中,位运算时,0.05 μs;浮点运算时,0.45 μs,

在 cpu 319-3 pn/dp 中,位运算时,0.004 μs;浮点运算时,0.04 μs

扩展数量

作为装载存储器的 simatic 微型存储卡(mmc):

可在微型存储卡中存储一个完整的项目,包括符号和注释。run 模式下也可以进行读/写操作。这样可以降低服务成本

无需电池即可在 mmc 上备份 ram 数据

编程

使用step7中的 lad、fbd stl 对 cpu 进行编程。可以使用下列编程工具:step 7 basis 和 step 7 professional。

可以运行 cpu 314 的工程与组态工具(例如,s7-graph、s7-higraph、scl、cfc 或 sfc)。

标准型cpu

对标准型 cpu 进行编程时需要 step 7 v5.2+sp1 以上的软件。

紧凑型 cpu

对紧凑型 cpu 进行编程时需要 step 7 v5.3+sp2 以上的软件。老版本的step 7需要升级。

用于s7-300/et 200m的负载电源

用于将市电电压转换为所需的24vdc工作电压

输出电流为 2a、5a 或 10a

s7-300/et 200m 需要 24v dc 电源。

sitop 负载电源把 120/230 vac 线路电压转换到所需的 24 vdc 工作电压。

这些模块可利用外部电压为s7-300/et200m以及传感器和执行器供电。

负载电源模块安装在 cpu/im 361/im153(插槽1)左边的 din 导轨上。

通过所提供的电源连接器连接到 cpu/im 361/im153 上。

该模板的前面板包括:

输出电压指示:

一个 led 显示 24 v dc 输出电压。

线电压选择开关:

可以通过带保护罩的开关选择输入电压:120 vac 或 230 vac。

24 vdc 输出电压的 on/off 开关;

前面板上通过盖板保护的还有:

端子:

这些端子用于连接输入电压电缆、输出电压电缆和接地导线。

负载电源也可安装在 35 mm 的标准导轨上(en 50 022),这需要下述安装适配器:

ps 307-1b 和 ps 307-1e各需一个适配器

ps 307-1k 需2个适配器

 

s7-300

simatic s7-300 是模块化的微型 plc 系统,可满足中、低端的性能要求。

模块化、无风扇设计、易于实现分布式结构以及方便的操作,使得 simatic s7-300 成为中、低端应用中各种不同任务的经济、用户友好的解决方案。

simatic s7-300 的应用领域包括:

特殊机械,

纺织机械,

包装机械,

一般机械设备制造,

控制器制造,

机床制造,

安装系统,

电气与电子工业及相关产业。

多种性能等级的 cpu,具有用户友好功能的全系列模块,可允许用户根据不同的应用选取相应模块。任务扩展时,可通过使用附加模块随时对控制器进行升级。

simatic s7-300 是一个通用的控制器:

具有高电磁兼容性和抗震性,可大限度地用于工业领域。

s7-300f

simatic s7-300f 故障安全自动化系统可使用在对安全要求较高的设备中。其可对立即停车过程进行控制,因此不会对人身、环境造成损害。

s7-300f 满足下列安全要求:

要求等级 ak 1 - ak 6 符合 din v 19250/din v vde 0801

安全要求等级 sil 1 - sil 3 符合 iec 61508

类别 1 - 4 符合 en 954-1

另外,标准模块还可用在 s7-300f 及故障安全模块中。因此它可以创建一个全集成的控制系统,在非安全相关和安全相关任务共存的工厂中使用。使用相同的标准工具对整个工厂进行组态和编程。

一般步骤

s7-300自动化系统采用模块化设计。它拥有丰富的模块,且这些模块均可以独立地组合使用。

一个系统包含下列组件:

cpu:

不同的 cpu 可用于不同的性能范围,包括具有集成 i/o 和对应功能的 cpu 以及具有集成 profibus dp、profinet 和点对点接口的 cpu。

用于数字量和模拟量输入/输出的信号模块 (sm)。

用于连接总线和点对点连接的通信处理器 (cp)。

用于高速计数、定位(开环/闭环)及 pid 控制的功能模块(fm)。

根据要求,也可使用下列模块:

用于将 simatic s7-300 连接到 120/230 v ac 电源的负载电源模块(ps)。

接口模块 (im),用于多层配置时连接中央控制器 (cc) 和扩展装置 (eu)。

通过分布式中央控制器 (cc) 和 3 个扩展装置 (eu),simatic s7-300 可以操作多达 32 个模块。所有模块均在外壳中运行,并且无需风扇。

siplus 模块可用于扩展的环境条件:

适用于 -25 至 +60℃ 的温度范围及高湿度、结露以及有雾的环境条件。防直接日晒、雨淋或水溅,在防护等级为 ip20 机柜内使用时,可直接在汽车或室外建筑使用。不需要空气调节的机柜和 ip65 外壳。

西门子s7-300plc有v存储区吗?听到这个问题,绝大多数人都会笑起来,v存储区不就是s7-200的变量存储区吗?s7-300哪里有什么v区?有没有搞错?*近有个网友在网上询问这个问题:“我的疑问也是这个v区,被一堆人鄙视的说是200的吧。另外我有个疑问没见有谁用这个区域编程,麻烦有类似的例子给露露脸啊”,显出了几分急切和无奈。
    我也曾经被这个问题困扰过,下面向大家介绍我寻找答案的过程。
    首先在step7的帮助中搜索“v区”,在参数类型any和pointer的帮助中有个存储区编码表,其中就有v区,其代码为16#87,对v区的描述为“先前的本地数据”。这几个字像天书一样,可能很难有人能看懂。
    为了确认翻译的准确性,我将step 7切换到英语,“先前的本地数据”的英文为“previouslocal data”。localdata一般翻译为“局部数据”,看来翻译没有问题。德国人的英语水平很高,德国大学图书馆的书籍和杂志大多数都是英语的,不用怀疑德语翻译为英语时失真。
    v区与参数类型any和pointer有关,打开step7的帮助目录中的附录,选中其中的“\数据类型和参数类型\参数类型\参数类型pointer的格式”,可以看到参数类型由6个字节组成,0号和1号字节是db块的编号,不是数据块内的地址时为0。2~5号字节的格式与寄存器间接寻址的格式相同。下面是寄存器间接寻址的32位指针格式:
                              x000 0rrr 0000 0bbb bbbb bbbb bbbb bxxx
   其中第0~2位(xxx,*低位为第0位)为被寻址地址中位的编号(0~7),第3~18位(16个b)为被寻址地址的字节的编号。第24~26位(rrr)为被寻址地址的区域标识号,指针的*高位x为0时,为区域内的间接寻址,*高位x 为1时,为区域间(交叉区域)间接寻址。
   参数类型any可以用来传递一片连续的地址区,由10个字节组成。any和pointer用于在块调用时传递输入、输出参数。为了揭开v区之谜,编写了fc1,将地址区中相邻的若干个字累加。地址区的起始地址由参数类型为pointer的输入参数start_addr提供。p#db2.dbx0.0也可以改写为db2.dbx0.0。在ob1中调用fc1:
      call fc     1
      start_addr :=p#db2.dbx0.0    //数据区起始地址
       number  :=5               //需要累加的字数
       result    :=db2.dbd10      //保存运算结果的双整数
   图1是运行时监控fc1的结果,累加器1(standard)中的数据为十六进制显示格式,ar1是地址寄存器1。终于看到了ar1中的v区地址了!


   图1中第一条指令的p#表示指针,第2个#号表示局部变量。p##start_addr就是调用fc1时,用输入参数start_addr传送给fc1的指针p#db2.dbx0.0(16#00028400 0000)存放的地址。p##start_addr(16#870000a8)*低字节16#a8对应的二进制数为2#10101000,其字节部分为2#10101,即十进制数21,*高字节16#87(2#10000111)表示存储区为v区。
   第一条指令将p##start_addr送给累加器1,第二条指令将累加器1中的数据传送到ar1,传送后ar1中的地址为v21.0(即16#870000a8)。
    那么v区到底是什么呢?根据帮助中的解释“先前的本地数据”(previous localdata),猜想与局部数据堆栈有关。执行每个块时,它都有自己的临时局部数据。在ob1调用fc1时,ob1的临时局部数据被保存到局部数据堆栈,fc1则使用它自己的临时局部数据区,ob1的局部数据成为“previouslocal data”(以前的局部变量)。根据上述分析,v区很有可能是调用fc1的ob1的局部数据区。
    怎样才能证实这个猜想呢?**能看到ar1中的地址为v21.0时,ob1的局部数据。好在step7的监控功能可以查看块调用时保存在堆栈中的数据。为了能看到某条指令执行后ob1的局部数据,在fc1的第2条指令处设置一个断点。执行完第2条指令后,cpu进入hold模式,此时打开cpu模块信息对话框的“堆栈”选项卡,选中b堆栈中的ob1,点击“l堆栈”按钮,打开l堆栈对话框,ob1的局部数据堆栈如图2所示。

 

由图1可知,因为指针常数p#v21.0(16#870000a8)被送给ar1,监控区中的ar1列显示v21.0。此时ob1调用fc1的pointer格式的实参p#db2.dbx0.0(16#000284000000),存放在从ob1的局部变量lb21开始的6个字节中(见图2)。因此ar1中的p#v21.0表示指针常数p#db2.dbx0.0的值存放在ob1的局部变量区中的地址,换句话说,v区就是调用fc1时ob1的局部数据区。
    难怪“没见有谁用这个区域编程”,v区用于监控,在编程时没有使用它。
   *后我们来总结一下块调用时的参数传递过程。如果输入参数为简单数据类型,例如字节、字、整数和双整数,可以通过32位(4个字节)的累加器1直接传递参数。而any和pointer分别为10个和6个字节,不能用累加器1直接传递。因此将这些参数的实参(例如16#00028400 0000)暂时保存在ob1从v21.0开始的局部变量中。在被调用的fc1中,p##start_addr提供了保存参数start_addr的实参的地址v21.0,在fc1中用寄存器间接寻址指令“l  w[ar1,p#0.0]”来读取pointer实参的第一个字(数据块编号),用指令“l  d[ar1,p#2.0]”来读取pointer实参的2~5号字节(数据块内的变量地址p#dbx0.0)。间接寻址的操作数地址等于方括号中ar1的地址值加上逗号后面的地址偏移量。
    说到这里,我们可以看到传递pointer参数类型的思路是非常清晰的,“previouslocal data”用词是准确的,只不过所用的笔墨太少,背后的复杂过程需要我们猜想和验证。
    解决了这个问题后,有一些感触:
   1.由于语言和思维方式的差异,老外写的用户手册有的地方很难理解,这并不奇怪。奇怪的是网上有一些高手的“用户手册**论”。用户手册肯定不是**的,不可能回答所有的问题,有的问题还需要我们设法去探索和发现,包括用程序来验证我们的假设。
    2.这个问题的解决使我惊叹step 7强大的功能,如果没有断点和监控堆栈的功能


西门子代理商,西门子PLC代理商,西门子中国代理商。西门子授权代理商,西门子一级代理商
展开全文
我们其他产品
我们的新闻
优质商家推荐 拨打电话