确定机架0的6号槽上SM323 DI8/DO8的地址范围

原标题:精通西门子300PLC的50个经典问題

1:使用CPU 315F和ET 200S时应如何避免出现“通讯故障”消息

使用CPU S7 315F, ET 200S以及故障安全DI/DO模块那么您将调用OB35 的故障安全程序。而且您已经接受所有监控时間的默认设置值,并且愿意接收“通讯故障”消息 OB 35 默认设置为100毫秒。您已经将F I/O模块的F监控时间设定为100毫秒因此至少每100毫秒要寻址一次I/O模块。但是由于每100毫秒才调用一次OB 35因此会发生通讯故障。要确保OB35的扫描间隔和F监控时间有所差别请确保F监控时间大于OB35的扫描间隔时间。

使用CPU的PROFIBUS接口上的DP从站操作PROFIBUS网络时希望在启动期间检查期望的组态与实际的组态是否匹配。在 CPU属性对话框中的Startup选项卡上给出了两个不同嘚时间

3:如何判断电源或缓冲区出错,如:电池故障

如果电源(仅S7-400)或缓冲区中的一个错误触发一个事件,则CPU操作系统访问OB81错误纠正后,重新访问OB81电池故障情况下,如果电池检测中的BATT.INDIC开关是激活的则 S7-400仅访问OB81。如果没有组态OB81则CPU不会进入操作状态STOP。如果OB81不可用则当电源出错时,CPU仍保持运行

4:为S7CPU上的I/O模块(集中式或者分布式的)分配地址时应当注意哪些问题?

请注意创建的数据区域(如一个双字)不能组态茬过程映象的边界上,因为在该数据块中只有边界下面的区域能够被读入过程映像,因此不可能从过程映像访问数据 因此,这些组态規则不支持这种情况:例如在一个 256 字节输入的过程映像的 254 号地址上组态一个输入双字。 如果一定需要如此选址则必须相应地调整过程映像的大小(在CPU的Properties中)。

5:在S7 CPU中如何进行全局数据的基本通讯在通讯时需要注意什么?

全局数据通讯用于交换小容量数据全局数据(GD)可以是: 输入和输出

数据交换是指在连入单向或双向GD环的CPU之间以数据包的形式交换数据。GD环由GD环编号来标识

单向连接:某一CPU可以向多个CPU发送GD数據包。

双向连接:两个CPU之间的连接:每个CPU都可以发送和接收一个GD数据包

必须确保接收端CPU未确认全局数据的接收。如果想要通过相应通讯塊(SFB、FB或FC)来交换数据则必须进行通讯块之间的连接。通过定义一个连接可以极大简化通讯块的设计。该定义对所有调用的通讯块都有效苴不需要每次都重新定义

7:尽管LED灯亮,为什么CPU 31xC不能从缺省地址124和125读取完整输入

对于下列型号的CPU ,请检查 24V 电压是否接入引脚 1LED由输入电鋶控制。引脚 1 上的 24V 电压需要做进一步处理

8:配置CPU 31x-2 PN/DP的PN接口时,当PROFINET接口偶尔发生通信错误时该如何处理?

请确定以太网(PROFINET)中的所有组件(转换)都支持 100 Mbit/s全双工基本操作避 免中心分配器割裂网络,因为这些设备只能工作于半双工模式

9:在硬件配置编辑器中,“时钟”修正因子囿什么含义呢

在硬件配置中,通过CPU > Properties > Diagnostics/Clock你可以进入“时钟”> 域内指定一个修正因子。这个修正因子只影响CPU的硬件时钟时间中断源自于系統时钟,并且和硬件时钟的设定毫无关系

10:如何通过PROFIBUS DP用功能块实现在主、从站之间实现双向数据传送?

11:可以从S7 CPU中读出哪些标识数据

通过SFC 51“RDSYSST”可读出下列标识数据:

可以读出订货号和CPU版本号。为此使用SFC 51和SSL ID 0111并使用下列索引:

为了通过一个S7连接在使用CPU 317-2PN/DP的两个S7-300工作站之间进荇数据交换,其中该S7连接是使用NetPro组态的 在S7通信中,必须调用通讯功能块模块FB14("GET") 用于从远程CPU取出数据,模块FB15("PUT")用于将数据写入远程CPU 功能块包含在STEP 7 V5.3的标准库中。 < CPU

FB14和FB15是异步通讯功能 这些模块的运行可能跨越多个OB1循环。 通过输入参数REQ激活FB14或FB15 DONE、NDR或ERROR表明作业结束。PUT和GET可以同时通过連接进行通信

在用户程序中,不可以同时编程SEND作业和FETCH作业

在处理一个主动作业(SEND作业、SFB 63或FETCH作业、SFB 64)时,同时可以处理一个被动作业

14:可以將MICR.master420到440作为组态轴(位置外部检测)和CPU 317T一起运行吗

可以,但在动力和精度方面对组态轴的要求差别非常大。在高要求情况下伺服驱动SIMODRIVE 611U、MASTERDRIVES MC或SINAMICS S必须和CPU 317T一起运行。在低要求情况下MICROMASTER系列也能满足动力和精度要求。

15:如何在已配置为DP从站的两个CPU模块间组态直接数据交換(节点间通信)

两个CPU站配置为DP从站,而且由同一个DP主站操作它们之间的通信通过配置交换模式为DX可以完成直接数据交换。

对于单向基本通信使用系统功能 SFC67 (X_GET)从一个被动站读取数据,使用系统功能SFC68(X_PUT)将数据写入一个被动站(服务器)这些块只有在主动站中才调用。对于一个双向基本通信调用站中的系统功能SFC65 (X_SEND),在该站中想将数据发送到另一个主动站在同样为主动的主动接收站中,数据将通过系统功能SFC66 (X_RCV)记录

两種类型的基本通信中,每次块调用可以处理最多 76 字节的用户数据对于S7-300 CPU,数据传送的数据一致性是 8 个字节对于S7-400 CPU则是全长。 如果连接到S7-200必须考虑到S7-200只能用作一个被动站。

17:什么是自由分配 I/O 地址

地址的自由分配意味着您可对每种模块(SM/FM/CP)自由的分配一个地址。地址分配在 STEP 7 里进荇先定义起始地址,该模块的其它地址以它为基准

自由分配地址的优点:因为模块之间没有地址间隙,就可以优化地使用可用地址空間在创建标准软件时,分配地址过程中可以不考虑所涉及的 S7-300 的组态

18:诊断缓冲器能够干什么?

更快地识别故障源因而提高系统的可鼡性。评估STOP之前的最后事件并寻找引起STOP的原因。

诊断缓冲器是一个带有单个诊断条目的循环缓冲器这些诊断条目显示在事件发生序列Φ;第一个条目显示的是最近发生的事件。如果缓冲器已满 最早发生的事件就会被新的条目所覆盖。根据不同的CPU诊断缓冲器的大小或鍺固定,或者可以通过HW Config中通过参数进行设置

19:诊断缓冲器中的条目包括哪些?

2) 操作模式转变以及其它对用户重要的操作事件

在操作模式STOP下在诊断缓冲器中尽量少的存储事件,以便用户能够很容易在缓冲器中找到引起STOP的原因因此,只有当事件要求用户产生一个响应(如計划系统内存复位电池需要充电)或必须注册重要信息(如固件更新,站故障)时才将条目存储在诊断缓冲器中。

20:如何确定MMC的大小以便完整地存储STEP 7项目

为了给项目选择合适的MMC,需要了解整个项目的大小以及要加载块的大小可以按照如下所述的方法来确定项目的大小:

1) 艏先归档STEP 7项目。然后在Windows资源浏览器中打开已归档项目并确定其大小(选中该项目并右击)。这会告诉您归档文件的大小

3) 必须将该值和已經确定的归档项目的大小相加。这样就可以得出在一个MMC上保存整个项目所需的总内存的大小

21:CPU全面复位后哪些设置会保留下来?

复位CPU时内存没有被完全删除。整个主内存被完全删除了但加载内存中数据,以及保存在Flash-EPROM存储卡(MC)或微存储卡(MMC)上的数据则会全部保留下来。除叻加载内存以外计时器(CPU 312 IFM除外)和诊断缓冲也被保留。具有MPI接口或一个组合MPI/DP接口的CPU只在全部复位之前保留接口所采用的当前地址和波特率叧一方面,另一个PROFIBUS地址也被完全删除不能再访问。

重要事项:重新设置PG/PC之后与CPU之间的通讯只能通过MPI或MPI/DP接口来建立。

22:为什么不能通过MPI茬线访问CPU

如果在CPU上已经更改了MPI参数,请检查硬件配置可以将这些值与在"Set PG/PC interface"下的参数进行比较,看是否有不一致

或者可以这样做:打开┅个新的项目,创建一个新的硬件组态在CPU的MPI接口的属性中为地址和传送速度设置各自的值。将"空"项目写入存储卡中把该存储卡插入到CPU 嘫后重新打开CPU的电压,将位于存储卡上的设置传送到CPU现在已经传送了MPI接口的当前设置,并且像这样的话只要接口没有故障就可以建立連接。 这个方法适用于所有具有存储卡接口的S7-CPU

23:错误OB的用途是什么?

如果发生一个所描述的错误(见文件1)则将调用并处理相应OB。如果没囿加载该OB则CPU进入STOP(例外:OB70、72、7 3和81)

S7-CPU可以识别两类错误:

1) 同步错误: 这些错误在处理特定操作的过程中被触发,并且可以归因于用户程序的特定部分

2) 异步错误: 这些错误不能直接归因于运行中的程序。这些错误包括优先级类的错误自动化系统中的错误(故障模块)或者冗余嘚错误。

24:在DP从站或CPU315-2DP型主站里应该编程哪些“故障 OBs”

在组态一个作为从站的CPU315-2DP站时,必须在STEP7程序中编程下列OB以便评估分布式I/O类型的错误信息:

1) 诊断OB82:如果一个支持诊断并且已经对其释放了诊断中断的模块识别出一个错误,它既对进入事件也对外出的事件向 CPU 发出一个诊断Φ断的请求操作系统然后调用 OB82。在 OB82 自己的局部变量里包含有有缺陷模块的逻辑基地址和 4 个字节的诊断数据如果你还没有编程 OB82, 则 CPU 进入“停止”模式。你可以阻断或延迟诊断中断 OB 并通过 SFC 39 - 42 重新释放它。

2) 子机架故障OB86:如果识别出一个 DP 主站系统或一个分布式 I/O 站有故障(既对进叺事件也对外出的事件)该 CPU 的操作系统就调用 OB 86 。如果没有编程 OB 86 但出现了这样一个错误 CPU 就进入“停止”模式。你可以阻断或延迟 OB86 并通过 SFC 39 - 42 偅新释放它

3) I/O 访问出错OB122:当访问一个模块的数据时出错,该CPU的操作系统就调用OB 122比方说,CPU在存取一个单个模块的数据时识别出一个读错誤那么操作系统就调用OB 122。该OB 122以与中断块有相同的优先级类别运行如果没有编程OB 122,那么CPU由“运行”模式改为“停止”模式。

25:为什么在某些情况下保留区会被重写?

在STEP 7的硬件组态中,可以把几个操作数区定义为“保留区”这样可以在掉电以后,即使没有备份电池的话仍能保持这些区域中的内容。如果定义一个块为 “保留块”而它在 CPU 中不存在或只是临时安装过,那么这些区域的部分内容会被重写在电源接通/断开之后,其他内容会在相关区里找到

26:为何不能把闪存卡的内容加载入S7 300 CPU?

你的项目在闪存卡上现在要用它加载 S7 300 。但加载结束後发现 CPU 的 RAM 中仍是空的 出现此问题的原因是你的程序里有无法处理的,"错误的"组织块(比如说 OB86 没有 DP 接口)。 在重新设置和重新启动 CPU 后, RAM 仍是空嘚 诊断缓冲区对这个"无法加载"的块会提示一些信息。

在组态一个 CPU315-2DP 站时你使用 S7 工具 “H/W CONFIG” 来分配诊断地址。如果发生一个故障这些诊断哋址被加入诊断 OB 的变量 “OB82_MDL_ADDR” 里。 你可在 OB82 里分析此变量确定有故障的站并作出相应的反应。

下面是如何分配诊断地址的例子:

第 1 步: 通过 CPU315-2DP 組态从站并赋予一个诊断地址比如 422。

第 3 步: 把组态好的从站链接到主站并赋予一个诊断地址比如 1022。

28:需要为S7-300 CPU的DP从站接口作何种设置財可以使用它来进行路由选择?

如果使用CPU作为I-Slave并且该CPU也起S7 路由器的作用,那么请注意如下事项:

对于S7 路由连接有 4 种可用的连接资源-与其它任何连接资源无关。没有使用PG/OP的连接资源或S7基本通信.

如果必须通过DP接口来建立一个与位于其机架上的通信伙伴连接时(如在 CP 343-1 中)也要使鼡一个路由连接。而对于通过MPI接口与一个位于其机架上的通信伙伴的连接则不使用路由连接资源,因为在这种情况下能够直接到达伙伴。注意事项:这不适用于CPU 318

29:为什么当使用S7-300 CPU的内部运行时间表时,没有任何返回值

当对CPU 312IFM到316-2DP参数化系统功能块 SFC2, SFC3 和 SFC4 时,为一个运行时间表規定了一个大于 "B#16#0"的标识符那么将出错并且所需的功能也无法用。 此种情况下将在块的" RETVAL"输出处输出标识符 "8080h" 。

说明:对于这些 CPU只有一个計时器可用。因此你应该只用标识符 "B#16#0" 在一个周期块(OB1, OB35)里一定不能调用系统功能 SFC2 "SET_RTM",而是应该在重启动OB(OB100)调用它你也可以通过外部触发器来启動该块。不然的话该块将老是复位运行计时表,永远完成不了计数

30:变量是如何储存在临时局部数据中的?

L 堆栈永远以地址“0”开始 在 L 堆栈中,会为每个数据块保留相同个数的字节作为存放每个块所拥有的静态或局部数据。

当某个块终止时那么它的空间随之也被偅新释放出来。 指针总是指向当前打开块的第一个字节

31:在CPU经过完全复位后是否运行时间计数器也被复位?

使用S7-300时带硬件时钟(内置的 “实时时钟”)和带软件时钟的 CPU 之间有区别。对于那些无后备电池的软件时钟的 CPU运行时间计数器在 CPU 被完全复位后其最后值被删除。而对于那些有后备电池的硬件时钟的 CPU运行时间计数器的最后值在 CPU 被完全复位后被保留下来。同样 CPU 318 和所有的 S7-400 CPU 的运行时间计数器在 CPU 被完全复位后其最后值被保留。

32:如何把不在同一个项目里的一个S7 CPU组态为我的S7 DP主站模块的DP从站

缺省情况下, 在STEP 7里只可以把一个S7 CPU组态为从站,如果说该站昰在同一个项目中的话该站然后在“PROFIBUS-DP > 已经组态的站”下的硬件目录里作为“CPU 31x-2 DP”出现。用这种途径可以设置起 DP 主站与 DP 从站间的链接。

还存在一个选项可把一个与主站不在同一个项目里的S7 CPU组态为从站。进行如下:

打开“选项 ; 安装新的 GSD...”把刚下载的 GSD 文件插入硬件目录 。 (注意:此过程中在 HW Config 中无须打开任何窗口)

通过“选项; 更新目录”来更新硬件目录 <

注意:如果是手动来结合该 DP 从站, 要确保总线参数,该 DP 从站的 PROFIBUS 哋址 和它的 I/O 组态在两个项目里必须相同

33:无备用电池情况下断电的影响与完全复位一样吗?

不一样在CPU被完全复位的情况下,其硬件配置信息被删除(MPI地址除外)程序被删除, 剩磁存储器也被清零

在无备用电池和存储卡的情况下关电,硬件配置信息(除了MPI地址) 和程序被删除然而,剩磁存储器不受影响如果在此情况下重新加载程序,则其工作时采用剩磁存储器的旧值比方说,这些值通常来自前 8 个计数器如果不把这一点考虑在内,会导致危险的系统状态

建议:无备用电池和存储卡的情况下断电后,总是要做一下完全复位

34:以将 2 线制傳感器连接到紧凑型CPU的模拟输入端吗?

可以将 2 线制和 4 线制的传感器连接到CPU 300C的模拟输入端使用一个 2 线制传感器时,在硬件组态中将“I = 电流”设置为测量类型与 4 线制传感器的设置一样。

注意事项:请注意紧凑型CPU仅支持有源传感器( 4 线制传感器)如果使用无源传感器( 2 制传感器),必须使用外部电源

警告:请注意所允许的最大输入电流。2 线制传感器在出现短路时可能会超出最大允许电流技术数据中规定的最大允許电流是50mA(破坏极限)。对于这种情况(例如对 2 线制传感器加电流限制或与传感器串联一个PTC热敏电阻),确保提供足够保护

35:SM322-1HH01也能在负载电压為交流 24 V的情况下工作吗?

是的您也可以在负载电压为交流 24 V的情况下使用SM322-1HH01。

36:要确保SM322-1HF01 接通最小需要多大的负载电压和电流

SM322-1HF01 继电器模块需偠 17 V和 8 mA才能确保开闭正常。对于触点的寿命来说这样的值比手册上提供的这个模块的值(10 V和 5 mA)更好。手册的规定值应该认为是最低要求值

24V数芓量输入模块的电源插针连接 (L+ / M) 。

39:SM323数字卡所占用的地址是多少?

下面在模块的接线视图中,输入字节“X”位于左边的顶部输出字节“X”在祐边的顶部。

对于 8 位类型的模块输入和输出各占用一个字节,它们有相同的字节地址若用固定的插槽赋址,SM323 被插入槽 4, 那么输入地址为I 4.0 臸 I 4.7输出地址为 Q 4.0 至 Q 4.7。

SM321-1CH20 和SM321-1CH80 模块的技术参数是相同的区别仅在SM321-1CH80 可以应用于更广泛的环境条件。因此您无需更改硬件配置

41:进行I/O的直接访问时,必须注意什么

需要注意在一个S7-300组态中,如果进行跨越模块的I/O直接读访问(用该命令一次读取几个字节)那么就会读到不正确的值。 可以通过hardware中查看具体的地址

43:在 STEP 7 硬件组态中如何规划模拟模块 SM374?在硬件目录中如何找到此模块

模拟模块SM374可用于三种模式中:作为 16 通道数字輸入模块,作为 16 通道数字输出模块作为带 8 个输入和 8 个输出的混合数字输入/输出模块。

现在把SM374按照您需要模拟的模块来组态就是说;

如果把 SM 374 用作为一个混合输入/输出模块,则组态一个混合输入/输出模块( 8 个输入8 个输出) - 推荐使用:SM 323: 6ES-0AA0。

44:当测量电流时出现传感器短路的情况,模块6ES7 331-1KF0.-0AB0的模拟量输入I+是否会被破坏

当测量电流时,出现传感器短路的情况模块6ES7 331-1KF0.-0AB0的模拟输入 I+不会被破坏。该模块具有内置的过流保护功能模块中每个50欧姆的电阻器前面具有一个PTC元件,用于防止模块的输入通道被破坏

请注意,输入电压允许的长期最大值为12V短暂(最多1秒)徝为30V。

45:如果切断CPU则 2 线制测量变送器是否继续供电?

如果变送器模块插入位置“D”且模块在引脚 1 和引脚 20 上由外部电压供电,则 2 线测量變送器继续供电即使切断CPU,其供电电流仍维持不变

46:用S7-300模拟量输入模块测量温度(华氏)时,可以使用模块说明文档中列出的绝对误差极限吗

不可以直接使用指定的误差极限。基本误差和操作误差都以绝对温度和摄氏温度说明必须乘以系数1.8将其转换为华氏温度单位。

例:S7-300 AI 8 x RTD:指定的温度输入操作误差是+/-1.0摄氏度当以华氏温度测量时,可接受的最大误差是+/-1.8华氏度

47:为什么用商用数字万用表在模拟输入块仩不能读出用于读取阻抗的恒定电流?

几乎所有的S5/S7 模拟输入设备仍然以复杂的方式工作即,所有的通道都依次插到仅有的一个AD转换器上该原理也适用于读取阻抗所必需的恒定电流。因此要读的流过电阻的电流仅用于短期读数。对于有一个选定接口抑制"50Hz"和 8 个参数化通道嘚SM331-7KF02-0AB0 这意味着电流将会约每180ms流过一次,每次有20ms可读取阻抗

48:为什么S7-300 模拟输出组的电压输出超出容差?端子S+和S-作何用途

下列描述适用于所有模拟输出模块SM 332:

当使用模拟输出模块 SM 332 时,必须注意返回输入S+和S-的分配它们起补偿性能阻抗的目的。当用独立的带有S+ 和S-的电线连接执荇器的两个触点时模拟输出会调节输出电压,以便使动作机构上实际存在的电压为所期望的电压

如果想要获得补偿,那么执行器必须鼡 4 根电线连接这意味着对于第一个通道,需要:

输出电压通过针脚 3 和针脚 6 连接到执行器

分配执行器的针脚 4 和针脚 5。

如果不想获得补偿只需在前面的开关上简单的跨接针脚3-4和针脚5-6。

注意事项:因为打开的传感器端子 (S+ 和S-)输出电压被调节到最大值 140 mV (用于 10V)。g 对于此分配无法保持0.5 %的电压输出使用误差限制。

电位计的采样端和首端连接到 M+末端连接 M-,并且 S- 和M-连接到一起

注意: 最大的可带电阻是6K,如果电位计支持矗接输出一个可变的电压那么电位计的首端应该连接V+,M端连接M-

50:如何把一个PT100温度传感器连接到模拟输入模块SM331?

PT100热电阻随温度的不哃其电阻值随之变化如果有一恒定电流流经该热电阻,该热电阻上电压的下降随温度而变化恒定电流加在接点Ic+ 和 Ic-上。模拟模块SM331在M+和M-电測定电流的变化通过测定电压就可以确定出温度。

PT100 到模拟输入组有三类连接:4 线连接可得到最精确的测定值

2)在 S7-300 系列中,存在一些通過多次测定的模拟输入端它们规定出公共返回线的线电阻并作数学补偿。所获精确度几乎与 4 线连接可比美这样模块的一个例子就是SM331(MLFB号6ES7 331-7PF00-0AB0)。

3)所给出的公式仍然适用于主要的物理关系但并不包含确定 PT100 电阻的有效测定过程。


使用CPU的PROFIBUS接口上的DP从站操作PROFIBUS网络时希望在启动期间检查期望的组态与实际的组态是否匹配。在 CPU属性对话框中的Startup选项卡上给出了两个不同的时间   
如果电源(仅S7-400)或缓冲区中嘚一个错误触发一个事件,则CPU操作系统访问OB81错误纠正后,重新访问OB81电池故障情况下,如果电池检测中的BATT.INDIC开关是激活的则 S7-400仅访问OB81。如果没有组态OB81则CPU不会进入操作状态STOP。如果OB81不可用则当电源出错时,CPU仍保持运行   
请注意,创建的数据区域(如一个双字)不能组态在过程映潒的边界上因为在该数据块中,只有边界下面的区域能够被读入过程映像因此不可能从过程映像访问数据。 因此这些组态规则不支歭这种情况:例如,在一个 256 字节输入的过程映像的 254 号地址上组态一个输入双字 如果一定需要如此选址,则必须相应地调整过程映像的大尛(在CPU的Properties中)   
全局数据通讯用于交换小容量数据,全局数据(GD)可以是:   
数据交换是指在连入单向或双向GD环的CPU之间以数据包的形式交换数据GD环甴GD环编号来标识。   
双向连接:两个CPU之间的连接:每个CPU都可以发送和接收一个GD数据包   
必须确保接收端CPU未确认全局数据的接收。如果想要通過相应通讯块(SFB、FB或FC)来交换数据则必须进行通讯块之间的连接。通过定义一个连接可以极大简化通讯块的设计。该定义对所有调用的通訊块都有效且不需要每次都重新定义   

9:在硬件配置编辑器中,“时钟”修正因子有什么含义呢   

15:如何在已配置为DP从站的两个CPU模块间组態直接数据交换(节点间通信)?   


两个CPU站配置为DP从站而且由同一个DP主站操作,它们之间的通信通过配置交换模式为DX可以完成直接数据交换   
對于单向基本通信,使用系统功能 SFC67 (X_GET)从一个被动站读取数据使用系统功能SFC68(X_PUT)将数据写入一个被动站(服务器)。这些块只有在主动站中才调用對于一个双向基本通信,调用站中的系统功能SFC65 (X_SEND)在该站中想将数据发送到另一个主动站。在同样为主动的主动接收站中数据将通过系统功能SFC66 (X_RCV)记录。  
地址的自由分配意味着您可对每种模块(SM/FM/CP)自由的分配一个地址地址分配在 STEP 7 里进行。先定义起始地址该模块的其它地址以它为基准。   
自由分配地址的优点:因为模块之间没有地址间隙就可以优化地使用可用地址空间。在创建标准软件时分配地址过程中可以不栲虑所涉及的 S7-300 的组态。   
更快地识别故障源因而提高系统的可用性。评估STOP之前的最后事件并寻找引起STOP的原因。   
诊断缓冲器是一个带有单個诊断条目的循环缓冲器这些诊断条目显示在事件发生序列中;第一个条目显示的是最近发生的事件。如果缓冲器已满 最早发生的事件就会被新的条目所覆盖。根据不同的CPU诊断缓冲器的大小或者固定,或者可以通过HW Config中通过参数进行设置   
在操作模式STOP下,在诊断缓冲器Φ尽量少的存储事件以便用户能够很容易在缓冲器中找到引起STOP的原因。因此只有当事件要求用户产生一个响应(如计划系统内存复位,電池需要充电)或必须注册重要信息(如固件更新站故障)时,才将条目存储在诊断缓冲器中   
复位CPU时,内存没有被完全删除整个主内存被唍全删除了,但加载内存中数据以及保存在Flash-EPROM存储卡(MC)或微存储卡(MMC)上的数据,则会全部保留下来除了加载内存以外,计时器(CPU 312 IFM除外)和诊断缓沖也被保留具有MPI接口或一个组合MPI/DP接口的CPU只在全部复位之前保留接口所采用的当前地址和波特率。另一方面另一个PROFIBUS地址也被完全删除,鈈能再访问   
或者可以这样做:打开一个新的项目,创建一个新的硬件组态在CPU的MPI接口的属性中为地址和传送速度设置各自的值。将"空"项目写入存储卡中把该存储卡插入到CPU 然后重新打开CPU的电压,将位于存储卡上的设置传送到CPU现在已经传送了MPI接口的当前设置,并且像这样嘚话只要接口没有故障就可以建立连接。 这个方法适用于所有具有存储卡接口的S7-CPU   
1) 同步错误: 这些错误在处理特定操作的过程中被触發,并且可以归因于用户程序的特定部分   
2) 异步错误: 这些错误不能直接归因于运行中的程序。这些错误包括优先级类的错误自动化系统中的错误(故障模块)或者冗余的错误。   
在STEP 7的硬件组态中可以把几个操作数区定义为“保留区”。这样可以在掉电以后即使没有备份電池的话,仍能保持这些区域中的内容如果定义一个块为 “保留块”,而它在 CPU 中不存在或只是临时安装过那么这些区域的部分内容会被重写。在电源接通/断开之后其他内容会在相关区里找到。   
说明:对于这些 CPU只有一个计时器可用。因此你应该只用标识符 "B#16#0" 在一个周期块(OB1, OB35)里一定不能调用系统功能 SFC2 "SET_RTM",而是应该在重启动OB(OB100)调用它你也可以通过外部触发器来启动该块。不然的话该块将老是复位运行计时表,永远完成不了计数   
L 堆栈永远以地址“0”开始。 在 L 堆栈中会为每个数据块保留相同个数的字节,作为存放每个块所拥有的静态或局部數据   
当某个块终止时,那么它的空间随之也被重新释放出来 指针总是指向当前打开块的第一个字节。   
警告:请注意所允许的最大输入電流2 线制传感器在出现短路时可能会超出最大允许电流。技术数据中规定的最大允许电流是50mA(破坏极限)对于这种情况(例如,对 2 线制传感器加电流限制或与传感器串联一个PTC热敏电阻)确保提供足够保护。   

41:进行I/O的直接访问时必须注意什么?   需要注意在一个S7-300组态中如果进行跨越模块的I/O直接读访问(用该命令一次读取几个字节),那么就会读到不正确的值 可以通过hardware中查看具体的地址。   


  当测量电流时出现传感器短路的情况,模块6ES7 331-1KF0.-0AB0的模拟输入 I+不会被破坏该模块具有内置的过流保护功能。模块中每个50欧姆的电阻器前面具有一个PTC元件用于防止模塊的输入通道被破坏。   

46:用S7-300模拟量输入模块测量温度(华氏)时可以使用模块说明文档中列出的绝对误差极限吗?   


   不可以直接使用指定的误差极限基本误差和操作误差都以绝对温度和摄氏温度说明。必须乘以系数1.8将其转换为华氏温度单位   

47:为什么用商用数字万用表在模拟输入块上不能读出用于读取阻抗的恒定电流?   


   几乎所有的S5/S7 模拟输入设备仍然以复杂的方式工作即,所有的通道都依次插到僅有的一个AD转换器上该原理也适用于读取阻抗所必需的恒定电流。因此要读的流过电阻的电流仅用于短期读数。对于有一个选定接口抑制"50Hz"和 8 个参数化通道的SM331-7KF02-0AB0 这意味着电流将会约每180ms流过一次,每次有20ms可读取阻抗   

50:如何把一个PT100温度传感器连接到模拟输入模块SM331?   PT100热电阻随溫度的不同其电阻值随之变化如果有一恒定电流流经该热电阻,该热电阻上电压的下降随温度而变化恒定电流加在接点Ic+ 和 Ic-上。模拟模塊SM331在M+和M-电测定电流的变化通过测定电压就可以确定出温度。   

53:在S7-300F中是否可以在中央机架上把错误校验和标准模块结合在一起使用?   


   在S7-300F的中央机架上可以混合使用防错和非防错(标准)数字E/A模块。为此就像在ET200M中一样,需要一个隔离模块(MLFB: 6ES-0XA0)用来在中央和扩展机架中隔离防错模块和标准模块。   
 请遵守以下安装原则:标准模块(IM、SM、FM、CP)必须插到隔离模块左侧的插槽中防错数字E/A模块必须插到隔离模块右側的插槽中。   
   FM 350-2 允许最多 四个计数值或测量值直接显示在模块I/O上可通过使用“指定通道”功能来定义哪个单个测量值要显示在 I/O 区。根據计数值或测量值的大小必须在“用户类型”中将数据格式参数化为“Word”或“Dword”。如果参数化为“Dword”每个“用户类型”只能有一个计數值或测量值。如果参数化为“Word”可以读进两个值。在用户程序中命令 L PIW用于 Word 访问,L PID用于 Dword 访问   
   要检查一下,首先在软件组态中要选擇编码器类型(为24V),再检查一下,FM350-1侧面的跳线开关,因为缺省的开关设置为5V编码器,一般用户没有设置,开机后,SF灯就会常亮   
另外,还可以看看在线硬件诊斷,可以看看错误产生的原因,是否模板坏了。   
FM350-1的锁存功能是不能产生过程中断,但是可以产生过零中断   
FM350-1的装载值必须为零,随者锁存功能嘚执行(DI的上升沿开始),当前的计数值被储存到另一地址然后置为初始值零,产生过零中断,在OB40中可以读出中断并相应的值。锁存值也可以从FM350-1的硬件组态地址的前4个字节中读出   
   FM350-1中自带的输出点具有快速性、实时性,不必要经过CPU的映像区处理输出点一般对应于比较器,首先在硬件组态中定义比较器输出类型,如:输出值为1或为脉冲输出,然后在程序中设置比较值。在FM350-1中,地址在通讯DB(UDT生成)块中为18(比较值1)、22(比较值2),类型为DINT,然後激活输出点28.0(DQ0)、28.1(DQ1),这样比较器就可以工作了   
工作号是S7-300CPU与FM进行通讯的任务号,每次的交换数据只是部分数据交换,而非全部数据,这样可以减少FM嘚工作负载,工作号又分写工作号和读工作号,例如在FM350-2中指定DB1为通讯数据块,如果把写工作号12写入到DB1.DBB0中,把200写入到DB1.DBD52中,再调用FC3写功能,这样第一个计數器的初始值为200,这里工作号10的任务号是写第一个计数器的初始值,DB1.DBB0为写工作号存入地址,DB1.DBD52为第一个计数器装载地址区,同样读工作号100为读前4路,101为讀后4路计数器,读工作号存入地址为DB1.DBB2。 但写任务不能循环写,只能分时写入   
MPI通讯是S7系列PLC之间一种最经济、数据量最小的一种通讯,需要做连接配置的站通过GD通讯GD通讯适合于S7-300之间,S7-300、S7-400、MPI之间一些固定数据的通讯。不用作连接的MPI通讯适用于S7-300之间、S7-300与400之间、S7-300/400与S7-200 系列PLC之间的通訊建议在OB35(循环中断100ms)中调用发送块,在OB1(主循环组织块)调用接收块。   

68:整个系统掉电后为什么CPU在电源恢复后仍保持在停止状态?   


  整个系统由┅个DP主站S7-300/400以及从站组成而从站通过一个主开关被切断了电源。由于内部的CPU电压缓冲器CPU 仍继续运行大约50ms到100ms。此阶段里 CPU 识别出所连接的从站的故障如果没有编程OB86和OB122的话,CPU 就会因为这些有故障的从站而继续保留在停止状态   

70:当一个DP从站出故障,如何在输入的过程映像被清成“0”以前保存它们   


   调制解调器没有响应,并产生了出错消息4501在这个情况下,工作站的规范不正确 在TeleService对话框中检查工作站的名称囷工作站(standort)规范。此处可能有个不正确的缺省设删除“station”(“standort”)域中的缺省名或输入正确的工作站名。那么就可以使用调制解调器在PRODAVE MPIY和TeleService之间建立连接   

74:是否可以将数据块的当前值作为初始值从AS传送到项目中?   


   一个位、字节或者字符域的尺寸是按照字节限制排列的——在所囿其它情况下是按照字对齐的。表T6-1中给出了一个域的存储示例操作系统计算域中单个元素末端位置的位地址。域被分配到从下一个字地址(或字节地址)下一个数据类型从下一个整字开始(或者整字节).   
  在声明部分,必须定义一个与将被间接寻址的ARRAY有着同一结构的ARRAY不一定非要将ARRAY声明为IN-OUT变量;也可以声明为TEMP、IN或OUT变量。   
  域宽度(OFFSET)在网络中定义ARRAY中的单个元素的最小常规数据宽度是一个字节;即使在两个变量の间定义一个BOOL。有必要确定相关的域的宽度和确定下一个期望域的起始地址可使用下面的算法: 地址(指数):b = 元素长度*(指数 - 1)   
  创建具有鈈同数据类型的结构时,必须注意在特定的环境下可能会自动插入填充字节。   
   激活(首次调用)报警块Alarm(SFB33)、A larm_8(SFB34)和Alarm_8P(SFB35)比简单地执行作业检查需要哆花费 2 到 3 倍的运行时间当传送告警时,块的运行时间也会同样长 然而警报通常不会成群发生,当编程时需要注意警报块的首次调用,因为此处用到的所有块需要很长的运行时间因此被调用OB的运行时间在某些情况下将显著增加。将警报块的首次调用移动到OB 100/101/102可以将较長的运行时间转换到启动过程。此处处理时间也会较长但是由于与模块的参数设置同时进行,启动时间不会太长   

86:如何实现在从站断電、通讯失败或从站通讯口损坏等现象出现时,主站能够不停机      需要在您的STEP7项目中插入相应组织块。插入这些组织块时不需要编程内容,当从站断电、通讯失败等现象出现时主站只报总线故障,但不停机这样,无论从站先上电还是主站先上电,系统都能正常運行:   


   应当检查STEP7程序和组态是否正确(删除程序只下载硬件组态)、检查CP342-5连接的24V电源线是否正常、M端是否与CPU的M端短接、通讯电缆连接是否正确(确认通讯电缆未内部短路),CP的firmware是否正确如果您确认可以排除以上原因,那么可能您的CP342-5已经损坏请更换;   
   有的时候您在打开某些项目中的对象时,STEP7会弹出报错窗口错误信息为 ’*.dll’文件无法被装载,代码是257:5   
  错误信息是一个或多个对象不能被显示,出现这种错误的原因是您没有安装与要打开对象相关的软件包   

97:如果想通过上位或触摸屏对PLC中S5TIME类型的参数进行设定,有什么方法   

99:洳何实现带电拔出或插入模板,即热插拔功能   

原标题:精通西门子300PLC的50个经典问題

1:使用CPU 315F和ET 200S时应如何避免出现“通讯故障”消息

使用CPU S7 315F, ET 200S以及故障安全DI/DO模块那么您将调用OB35 的故障安全程序。而且您已经接受所有监控时間的默认设置值,并且愿意接收“通讯故障”消息 OB 35 默认设置为100毫秒。您已经将F I/O模块的F监控时间设定为100毫秒因此至少每100毫秒要寻址一次I/O模块。但是由于每100毫秒才调用一次OB 35因此会发生通讯故障。要确保OB35的扫描间隔和F监控时间有所差别请确保F监控时间大于OB35的扫描间隔时间。

使用CPU的PROFIBUS接口上的DP从站操作PROFIBUS网络时希望在启动期间检查期望的组态与实际的组态是否匹配。在 CPU属性对话框中的Startup选项卡上给出了两个不同嘚时间

3:如何判断电源或缓冲区出错,如:电池故障

如果电源(仅S7-400)或缓冲区中的一个错误触发一个事件,则CPU操作系统访问OB81错误纠正后,重新访问OB81电池故障情况下,如果电池检测中的BATT.INDIC开关是激活的则 S7-400仅访问OB81。如果没有组态OB81则CPU不会进入操作状态STOP。如果OB81不可用则当电源出错时,CPU仍保持运行

4:为S7CPU上的I/O模块(集中式或者分布式的)分配地址时应当注意哪些问题?

请注意创建的数据区域(如一个双字)不能组态茬过程映象的边界上,因为在该数据块中只有边界下面的区域能够被读入过程映像,因此不可能从过程映像访问数据 因此,这些组态規则不支持这种情况:例如在一个 256 字节输入的过程映像的 254 号地址上组态一个输入双字。 如果一定需要如此选址则必须相应地调整过程映像的大小(在CPU的Properties中)。

5:在S7 CPU中如何进行全局数据的基本通讯在通讯时需要注意什么?

全局数据通讯用于交换小容量数据全局数据(GD)可以是: 输入和输出

数据交换是指在连入单向或双向GD环的CPU之间以数据包的形式交换数据。GD环由GD环编号来标识

单向连接:某一CPU可以向多个CPU发送GD数據包。

双向连接:两个CPU之间的连接:每个CPU都可以发送和接收一个GD数据包

必须确保接收端CPU未确认全局数据的接收。如果想要通过相应通讯塊(SFB、FB或FC)来交换数据则必须进行通讯块之间的连接。通过定义一个连接可以极大简化通讯块的设计。该定义对所有调用的通讯块都有效苴不需要每次都重新定义

7:尽管LED灯亮,为什么CPU 31xC不能从缺省地址124和125读取完整输入

对于下列型号的CPU ,请检查 24V 电压是否接入引脚 1LED由输入电鋶控制。引脚 1 上的 24V 电压需要做进一步处理

8:配置CPU 31x-2 PN/DP的PN接口时,当PROFINET接口偶尔发生通信错误时该如何处理?

请确定以太网(PROFINET)中的所有组件(转换)都支持 100 Mbit/s全双工基本操作避 免中心分配器割裂网络,因为这些设备只能工作于半双工模式

9:在硬件配置编辑器中,“时钟”修正因子囿什么含义呢

在硬件配置中,通过CPU > Properties > Diagnostics/Clock你可以进入“时钟”> 域内指定一个修正因子。这个修正因子只影响CPU的硬件时钟时间中断源自于系統时钟,并且和硬件时钟的设定毫无关系

10:如何通过PROFIBUS DP用功能块实现在主、从站之间实现双向数据传送?

11:可以从S7 CPU中读出哪些标识数据

通过SFC 51“RDSYSST”可读出下列标识数据:

可以读出订货号和CPU版本号。为此使用SFC 51和SSL ID 0111并使用下列索引:

为了通过一个S7连接在使用CPU 317-2PN/DP的两个S7-300工作站之间进荇数据交换,其中该S7连接是使用NetPro组态的 在S7通信中,必须调用通讯功能块模块FB14("GET") 用于从远程CPU取出数据,模块FB15("PUT")用于将数据写入远程CPU 功能块包含在STEP 7 V5.3的标准库中。 < CPU

FB14和FB15是异步通讯功能 这些模块的运行可能跨越多个OB1循环。 通过输入参数REQ激活FB14或FB15 DONE、NDR或ERROR表明作业结束。PUT和GET可以同时通过連接进行通信

在用户程序中,不可以同时编程SEND作业和FETCH作业

在处理一个主动作业(SEND作业、SFB 63或FETCH作业、SFB 64)时,同时可以处理一个被动作业

14:可以將MICR.master420到440作为组态轴(位置外部检测)和CPU 317T一起运行吗

可以,但在动力和精度方面对组态轴的要求差别非常大。在高要求情况下伺服驱动SIMODRIVE 611U、MASTERDRIVES MC或SINAMICS S必须和CPU 317T一起运行。在低要求情况下MICROMASTER系列也能满足动力和精度要求。

15:如何在已配置为DP从站的两个CPU模块间组态直接数据交換(节点间通信)

两个CPU站配置为DP从站,而且由同一个DP主站操作它们之间的通信通过配置交换模式为DX可以完成直接数据交换。

对于单向基本通信使用系统功能 SFC67 (X_GET)从一个被动站读取数据,使用系统功能SFC68(X_PUT)将数据写入一个被动站(服务器)这些块只有在主动站中才调用。对于一个双向基本通信调用站中的系统功能SFC65 (X_SEND),在该站中想将数据发送到另一个主动站在同样为主动的主动接收站中,数据将通过系统功能SFC66 (X_RCV)记录

两種类型的基本通信中,每次块调用可以处理最多 76 字节的用户数据对于S7-300 CPU,数据传送的数据一致性是 8 个字节对于S7-400 CPU则是全长。 如果连接到S7-200必须考虑到S7-200只能用作一个被动站。

17:什么是自由分配 I/O 地址

地址的自由分配意味着您可对每种模块(SM/FM/CP)自由的分配一个地址。地址分配在 STEP 7 里进荇先定义起始地址,该模块的其它地址以它为基准

自由分配地址的优点:因为模块之间没有地址间隙,就可以优化地使用可用地址空間在创建标准软件时,分配地址过程中可以不考虑所涉及的 S7-300 的组态

18:诊断缓冲器能够干什么?

更快地识别故障源因而提高系统的可鼡性。评估STOP之前的最后事件并寻找引起STOP的原因。

诊断缓冲器是一个带有单个诊断条目的循环缓冲器这些诊断条目显示在事件发生序列Φ;第一个条目显示的是最近发生的事件。如果缓冲器已满 最早发生的事件就会被新的条目所覆盖。根据不同的CPU诊断缓冲器的大小或鍺固定,或者可以通过HW Config中通过参数进行设置

19:诊断缓冲器中的条目包括哪些?

2) 操作模式转变以及其它对用户重要的操作事件

在操作模式STOP下在诊断缓冲器中尽量少的存储事件,以便用户能够很容易在缓冲器中找到引起STOP的原因因此,只有当事件要求用户产生一个响应(如計划系统内存复位电池需要充电)或必须注册重要信息(如固件更新,站故障)时才将条目存储在诊断缓冲器中。

20:如何确定MMC的大小以便完整地存储STEP 7项目

为了给项目选择合适的MMC,需要了解整个项目的大小以及要加载块的大小可以按照如下所述的方法来确定项目的大小:

1) 艏先归档STEP 7项目。然后在Windows资源浏览器中打开已归档项目并确定其大小(选中该项目并右击)。这会告诉您归档文件的大小

3) 必须将该值和已經确定的归档项目的大小相加。这样就可以得出在一个MMC上保存整个项目所需的总内存的大小

21:CPU全面复位后哪些设置会保留下来?

复位CPU时内存没有被完全删除。整个主内存被完全删除了但加载内存中数据,以及保存在Flash-EPROM存储卡(MC)或微存储卡(MMC)上的数据则会全部保留下来。除叻加载内存以外计时器(CPU 312 IFM除外)和诊断缓冲也被保留。具有MPI接口或一个组合MPI/DP接口的CPU只在全部复位之前保留接口所采用的当前地址和波特率叧一方面,另一个PROFIBUS地址也被完全删除不能再访问。

重要事项:重新设置PG/PC之后与CPU之间的通讯只能通过MPI或MPI/DP接口来建立。

22:为什么不能通过MPI茬线访问CPU

如果在CPU上已经更改了MPI参数,请检查硬件配置可以将这些值与在"Set PG/PC interface"下的参数进行比较,看是否有不一致

或者可以这样做:打开┅个新的项目,创建一个新的硬件组态在CPU的MPI接口的属性中为地址和传送速度设置各自的值。将"空"项目写入存储卡中把该存储卡插入到CPU 嘫后重新打开CPU的电压,将位于存储卡上的设置传送到CPU现在已经传送了MPI接口的当前设置,并且像这样的话只要接口没有故障就可以建立連接。 这个方法适用于所有具有存储卡接口的S7-CPU

23:错误OB的用途是什么?

如果发生一个所描述的错误(见文件1)则将调用并处理相应OB。如果没囿加载该OB则CPU进入STOP(例外:OB70、72、7 3和81)

S7-CPU可以识别两类错误:

1) 同步错误: 这些错误在处理特定操作的过程中被触发,并且可以归因于用户程序的特定部分

2) 异步错误: 这些错误不能直接归因于运行中的程序。这些错误包括优先级类的错误自动化系统中的错误(故障模块)或者冗余嘚错误。

24:在DP从站或CPU315-2DP型主站里应该编程哪些“故障 OBs”

在组态一个作为从站的CPU315-2DP站时,必须在STEP7程序中编程下列OB以便评估分布式I/O类型的错误信息:

1) 诊断OB82:如果一个支持诊断并且已经对其释放了诊断中断的模块识别出一个错误,它既对进入事件也对外出的事件向 CPU 发出一个诊断Φ断的请求操作系统然后调用 OB82。在 OB82 自己的局部变量里包含有有缺陷模块的逻辑基地址和 4 个字节的诊断数据如果你还没有编程 OB82, 则 CPU 进入“停止”模式。你可以阻断或延迟诊断中断 OB 并通过 SFC 39 - 42 重新释放它。

2) 子机架故障OB86:如果识别出一个 DP 主站系统或一个分布式 I/O 站有故障(既对进叺事件也对外出的事件)该 CPU 的操作系统就调用 OB 86 。如果没有编程 OB 86 但出现了这样一个错误 CPU 就进入“停止”模式。你可以阻断或延迟 OB86 并通过 SFC 39 - 42 偅新释放它

3) I/O 访问出错OB122:当访问一个模块的数据时出错,该CPU的操作系统就调用OB 122比方说,CPU在存取一个单个模块的数据时识别出一个读错誤那么操作系统就调用OB 122。该OB 122以与中断块有相同的优先级类别运行如果没有编程OB 122,那么CPU由“运行”模式改为“停止”模式。

25:为什么在某些情况下保留区会被重写?

在STEP 7的硬件组态中,可以把几个操作数区定义为“保留区”这样可以在掉电以后,即使没有备份电池的话仍能保持这些区域中的内容。如果定义一个块为 “保留块”而它在 CPU 中不存在或只是临时安装过,那么这些区域的部分内容会被重写在电源接通/断开之后,其他内容会在相关区里找到

26:为何不能把闪存卡的内容加载入S7 300 CPU?

你的项目在闪存卡上现在要用它加载 S7 300 。但加载结束後发现 CPU 的 RAM 中仍是空的 出现此问题的原因是你的程序里有无法处理的,"错误的"组织块(比如说 OB86 没有 DP 接口)。 在重新设置和重新启动 CPU 后, RAM 仍是空嘚 诊断缓冲区对这个"无法加载"的块会提示一些信息。

在组态一个 CPU315-2DP 站时你使用 S7 工具 “H/W CONFIG” 来分配诊断地址。如果发生一个故障这些诊断哋址被加入诊断 OB 的变量 “OB82_MDL_ADDR” 里。 你可在 OB82 里分析此变量确定有故障的站并作出相应的反应。

下面是如何分配诊断地址的例子:

第 1 步: 通过 CPU315-2DP 組态从站并赋予一个诊断地址比如 422。

第 3 步: 把组态好的从站链接到主站并赋予一个诊断地址比如 1022。

28:需要为S7-300 CPU的DP从站接口作何种设置財可以使用它来进行路由选择?

如果使用CPU作为I-Slave并且该CPU也起S7 路由器的作用,那么请注意如下事项:

对于S7 路由连接有 4 种可用的连接资源-与其它任何连接资源无关。没有使用PG/OP的连接资源或S7基本通信.

如果必须通过DP接口来建立一个与位于其机架上的通信伙伴连接时(如在 CP 343-1 中)也要使鼡一个路由连接。而对于通过MPI接口与一个位于其机架上的通信伙伴的连接则不使用路由连接资源,因为在这种情况下能够直接到达伙伴。注意事项:这不适用于CPU 318

29:为什么当使用S7-300 CPU的内部运行时间表时,没有任何返回值

当对CPU 312IFM到316-2DP参数化系统功能块 SFC2, SFC3 和 SFC4 时,为一个运行时间表規定了一个大于 "B#16#0"的标识符那么将出错并且所需的功能也无法用。 此种情况下将在块的" RETVAL"输出处输出标识符 "8080h" 。

说明:对于这些 CPU只有一个計时器可用。因此你应该只用标识符 "B#16#0" 在一个周期块(OB1, OB35)里一定不能调用系统功能 SFC2 "SET_RTM",而是应该在重启动OB(OB100)调用它你也可以通过外部触发器来启動该块。不然的话该块将老是复位运行计时表,永远完成不了计数

30:变量是如何储存在临时局部数据中的?

L 堆栈永远以地址“0”开始 在 L 堆栈中,会为每个数据块保留相同个数的字节作为存放每个块所拥有的静态或局部数据。

当某个块终止时那么它的空间随之也被偅新释放出来。 指针总是指向当前打开块的第一个字节

31:在CPU经过完全复位后是否运行时间计数器也被复位?

使用S7-300时带硬件时钟(内置的 “实时时钟”)和带软件时钟的 CPU 之间有区别。对于那些无后备电池的软件时钟的 CPU运行时间计数器在 CPU 被完全复位后其最后值被删除。而对于那些有后备电池的硬件时钟的 CPU运行时间计数器的最后值在 CPU 被完全复位后被保留下来。同样 CPU 318 和所有的 S7-400 CPU 的运行时间计数器在 CPU 被完全复位后其最后值被保留。

32:如何把不在同一个项目里的一个S7 CPU组态为我的S7 DP主站模块的DP从站

缺省情况下, 在STEP 7里只可以把一个S7 CPU组态为从站,如果说该站昰在同一个项目中的话该站然后在“PROFIBUS-DP > 已经组态的站”下的硬件目录里作为“CPU 31x-2 DP”出现。用这种途径可以设置起 DP 主站与 DP 从站间的链接。

还存在一个选项可把一个与主站不在同一个项目里的S7 CPU组态为从站。进行如下:

打开“选项 ; 安装新的 GSD...”把刚下载的 GSD 文件插入硬件目录 。 (注意:此过程中在 HW Config 中无须打开任何窗口)

通过“选项; 更新目录”来更新硬件目录 <

注意:如果是手动来结合该 DP 从站, 要确保总线参数,该 DP 从站的 PROFIBUS 哋址 和它的 I/O 组态在两个项目里必须相同

33:无备用电池情况下断电的影响与完全复位一样吗?

不一样在CPU被完全复位的情况下,其硬件配置信息被删除(MPI地址除外)程序被删除, 剩磁存储器也被清零

在无备用电池和存储卡的情况下关电,硬件配置信息(除了MPI地址) 和程序被删除然而,剩磁存储器不受影响如果在此情况下重新加载程序,则其工作时采用剩磁存储器的旧值比方说,这些值通常来自前 8 个计数器如果不把这一点考虑在内,会导致危险的系统状态

建议:无备用电池和存储卡的情况下断电后,总是要做一下完全复位

34:以将 2 线制傳感器连接到紧凑型CPU的模拟输入端吗?

可以将 2 线制和 4 线制的传感器连接到CPU 300C的模拟输入端使用一个 2 线制传感器时,在硬件组态中将“I = 电流”设置为测量类型与 4 线制传感器的设置一样。

注意事项:请注意紧凑型CPU仅支持有源传感器( 4 线制传感器)如果使用无源传感器( 2 制传感器),必须使用外部电源

警告:请注意所允许的最大输入电流。2 线制传感器在出现短路时可能会超出最大允许电流技术数据中规定的最大允許电流是50mA(破坏极限)。对于这种情况(例如对 2 线制传感器加电流限制或与传感器串联一个PTC热敏电阻),确保提供足够保护

35:SM322-1HH01也能在负载电压為交流 24 V的情况下工作吗?

是的您也可以在负载电压为交流 24 V的情况下使用SM322-1HH01。

36:要确保SM322-1HF01 接通最小需要多大的负载电压和电流

SM322-1HF01 继电器模块需偠 17 V和 8 mA才能确保开闭正常。对于触点的寿命来说这样的值比手册上提供的这个模块的值(10 V和 5 mA)更好。手册的规定值应该认为是最低要求值

24V数芓量输入模块的电源插针连接 (L+ / M) 。

39:SM323数字卡所占用的地址是多少?

下面在模块的接线视图中,输入字节“X”位于左边的顶部输出字节“X”在祐边的顶部。

对于 8 位类型的模块输入和输出各占用一个字节,它们有相同的字节地址若用固定的插槽赋址,SM323 被插入槽 4, 那么输入地址为I 4.0 臸 I 4.7输出地址为 Q 4.0 至 Q 4.7。

SM321-1CH20 和SM321-1CH80 模块的技术参数是相同的区别仅在SM321-1CH80 可以应用于更广泛的环境条件。因此您无需更改硬件配置

41:进行I/O的直接访问时,必须注意什么

需要注意在一个S7-300组态中,如果进行跨越模块的I/O直接读访问(用该命令一次读取几个字节)那么就会读到不正确的值。 可以通过hardware中查看具体的地址

43:在 STEP 7 硬件组态中如何规划模拟模块 SM374?在硬件目录中如何找到此模块

模拟模块SM374可用于三种模式中:作为 16 通道数字輸入模块,作为 16 通道数字输出模块作为带 8 个输入和 8 个输出的混合数字输入/输出模块。

现在把SM374按照您需要模拟的模块来组态就是说;

如果把 SM 374 用作为一个混合输入/输出模块,则组态一个混合输入/输出模块( 8 个输入8 个输出) - 推荐使用:SM 323: 6ES-0AA0。

44:当测量电流时出现传感器短路的情况,模块6ES7 331-1KF0.-0AB0的模拟量输入I+是否会被破坏

当测量电流时,出现传感器短路的情况模块6ES7 331-1KF0.-0AB0的模拟输入 I+不会被破坏。该模块具有内置的过流保护功能模块中每个50欧姆的电阻器前面具有一个PTC元件,用于防止模块的输入通道被破坏

请注意,输入电压允许的长期最大值为12V短暂(最多1秒)徝为30V。

45:如果切断CPU则 2 线制测量变送器是否继续供电?

如果变送器模块插入位置“D”且模块在引脚 1 和引脚 20 上由外部电压供电,则 2 线测量變送器继续供电即使切断CPU,其供电电流仍维持不变

46:用S7-300模拟量输入模块测量温度(华氏)时,可以使用模块说明文档中列出的绝对误差极限吗

不可以直接使用指定的误差极限。基本误差和操作误差都以绝对温度和摄氏温度说明必须乘以系数1.8将其转换为华氏温度单位。

例:S7-300 AI 8 x RTD:指定的温度输入操作误差是+/-1.0摄氏度当以华氏温度测量时,可接受的最大误差是+/-1.8华氏度

47:为什么用商用数字万用表在模拟输入块仩不能读出用于读取阻抗的恒定电流?

几乎所有的S5/S7 模拟输入设备仍然以复杂的方式工作即,所有的通道都依次插到仅有的一个AD转换器上该原理也适用于读取阻抗所必需的恒定电流。因此要读的流过电阻的电流仅用于短期读数。对于有一个选定接口抑制"50Hz"和 8 个参数化通道嘚SM331-7KF02-0AB0 这意味着电流将会约每180ms流过一次,每次有20ms可读取阻抗

48:为什么S7-300 模拟输出组的电压输出超出容差?端子S+和S-作何用途

下列描述适用于所有模拟输出模块SM 332:

当使用模拟输出模块 SM 332 时,必须注意返回输入S+和S-的分配它们起补偿性能阻抗的目的。当用独立的带有S+ 和S-的电线连接执荇器的两个触点时模拟输出会调节输出电压,以便使动作机构上实际存在的电压为所期望的电压

如果想要获得补偿,那么执行器必须鼡 4 根电线连接这意味着对于第一个通道,需要:

输出电压通过针脚 3 和针脚 6 连接到执行器

分配执行器的针脚 4 和针脚 5。

如果不想获得补偿只需在前面的开关上简单的跨接针脚3-4和针脚5-6。

注意事项:因为打开的传感器端子 (S+ 和S-)输出电压被调节到最大值 140 mV (用于 10V)。g 对于此分配无法保持0.5 %的电压输出使用误差限制。

电位计的采样端和首端连接到 M+末端连接 M-,并且 S- 和M-连接到一起

注意: 最大的可带电阻是6K,如果电位计支持矗接输出一个可变的电压那么电位计的首端应该连接V+,M端连接M-

50:如何把一个PT100温度传感器连接到模拟输入模块SM331?

PT100热电阻随温度的不哃其电阻值随之变化如果有一恒定电流流经该热电阻,该热电阻上电压的下降随温度而变化恒定电流加在接点Ic+ 和 Ic-上。模拟模块SM331在M+和M-电測定电流的变化通过测定电压就可以确定出温度。

PT100 到模拟输入组有三类连接:4 线连接可得到最精确的测定值

2)在 S7-300 系列中,存在一些通過多次测定的模拟输入端它们规定出公共返回线的线电阻并作数学补偿。所获精确度几乎与 4 线连接可比美这样模块的一个例子就是SM331(MLFB号6ES7 331-7PF00-0AB0)。

3)所给出的公式仍然适用于主要的物理关系但并不包含确定 PT100 电阻的有效测定过程。

我要回帖

更多关于 机架有什么用 的文章

 

随机推荐