RM新时代注册|首入球时间

<div id="4aewj"></div>

    
    
      1. <rp id="4aewj"><nobr id="4aewj"><s id="4aewj"></s></nobr></rp>
        歡迎光臨大柏電子科技(上海)有限公司
        當(dāng)前位置
        首頁 > 新聞中心
        西門子PLC-RCV 接收指令例程
        2020/12/2 9:14:57

        RCV 接收指令例程

        例程 1 :S7-200 SMART CPU集成的RS485 端口(端口0)實(shí)現(xiàn)與條碼掃描槍通信

        例程 2 :2臺(tái)S7-200 SMART CPU(端口0)采用自由口通信方式實(shí)現(xiàn)相互通信

        例程 3:使用任意字符檢測(cè)為接收消息的起始條件時(shí),選擇消息定時(shí)器和其它結(jié)束條件組合為接收消息的結(jié)束條件

        例程 4:信息接收超時(shí),需要人為終止信息的接收

        例程 1 :S7-200 SMART CPU集成的RS485 端口(端口0)實(shí)現(xiàn)與條碼掃描槍通信

        條碼掃描槍通常為 RS232 端口,其與 S7-200 SMART CPU 集成的 RS485 端口連接時(shí)需要使用 RS232/485 轉(zhuǎn)換設(shè)備或 RS-232/PPI 多主站電纜。
        條碼掃描槍接收到條碼后會(huì)自動(dòng)通過 RS232 端口發(fā)送報(bào)文,S7-200 SMART CPU 需要調(diào)用 RCV 指令接收?qǐng)?bào)文,并在接收完成中斷中再次使能 RCV 指令循環(huán)接收?qǐng)?bào)文。

        CPU 主程序見圖1.所示:

        圖1.CPU 主程序
        1.設(shè)置 SMB30 = 2#00001001 (自由口通信,波特率 9600,8 位數(shù)據(jù)位,無校驗(yàn));
        2.設(shè)置 SMB87 = 2#10010100,使用空閑線檢測(cè)為信息接收的起始條件,使用字符間定時(shí)器為信息接收的結(jié)束條件 ;
        3.設(shè)置空閑線定時(shí)器 SMW90 = 5 ms,字符間定時(shí)器 SMW92 = 5 ms,允許最大接收字符個(gè)數(shù) SMB94 = 50;
        4.連接中斷子程序 INT_0 到通信端口 0 接收完成事件,并使能中斷;
        5. 使用 SM0.1 觸發(fā) RCV 指令地執(zhí)行。

        CPU 中斷程序見圖2.所示:

        圖2.CPU 中斷程序
        1.判斷信息接收結(jié)束是否為字符間超時(shí)結(jié)束(SM86.2 = 1),若是,則認(rèn)為接收成功,接收成功計(jì)算器 VB200 自加一;
        2.消息接收成功時(shí)接收的信息拷貝到 VB300 為起始地址的存儲(chǔ)區(qū);
        3.開始下一次 RCV 指令地執(zhí)行。

        以上描述步驟參考下面的通信例程,例程中的 CPU 類型可能與用戶實(shí)際使用的類型不同,用戶可能需要先對(duì)例子程序做修改和調(diào)整,才能將其用于測(cè)試。

        S7-200 SMART與條碼掃描槍通信例程

         注意:此指令庫(kù)/程序的作者和擁有者對(duì)于該軟件的功能性和兼容性不負(fù)任何責(zé)任。使用該軟件的風(fēng)險(xiǎn)完全由用戶自行承擔(dān)。由于它是免費(fèi)的,所以不提供任何擔(dān)保,錯(cuò)誤糾正和熱線支持,用戶不必為此聯(lián)系西門子技術(shù)支持與服務(wù)部門。

        例程 2 :2臺(tái)S7-200 SMART CPU(端口0)采用自由口通信方式實(shí)現(xiàn)相互通信

        通信任務(wù):CPU1 每秒觸發(fā)一次 XMT 指令將 CPU 的實(shí)時(shí)時(shí)鐘發(fā)送到 CPU2;CPU2 接收到 CPU1 發(fā)送的信息后立即將 CPU2 的實(shí)時(shí)時(shí)鐘回復(fù)到 CPU1。

        1、CPU1 編程
        1.1、CPU1 主程序編程如圖3. 所示:

        圖3. CPU1主程序
        1. 設(shè)置 SMB30 = 2#00001001 (自由口通信,波特率 9600 bps,8 位數(shù)據(jù)位,無校驗(yàn))。
        2. 設(shè)置 SMB87 = 2#10010100,使用空閑線檢測(cè)為信息接收的起始條件,使用字符間定時(shí)器為信息接收的結(jié)束條件。
        3. 設(shè)置空閑線定時(shí)器 SMW90 = 5 ms,字符間定時(shí)器 SMW92 = 5 ms,允許最大接收字符個(gè)數(shù) SMB94 = 10。
        4. 連接中斷子程序 INT_0 到通信端口 0 發(fā)送完成事件,并啟用中斷。
        5. 每秒鐘讀取一次 CPU 的實(shí)時(shí)時(shí)鐘,并將發(fā)送緩沖區(qū)長(zhǎng)度設(shè)置為 8 個(gè)字符。
        6. 執(zhí)行 XMT 指令之前設(shè)置 SM87.7 = 0,同時(shí)執(zhí)行 RCV 指令,終止消息接收。
        7. 每秒鐘執(zhí)行一次 XMT 指令將 CPU 的實(shí)時(shí)時(shí)鐘發(fā)送出去。

        1.2、 CPU1 發(fā)送完成中斷子程序 INT_0 編程

        中斷子程序INT_0用于恢復(fù) SMB87 的設(shè)置(SM87.7 = 1),并執(zhí)行 RCV 指令開始接收 CPU2的應(yīng)答信息。程序如圖4. 所示:

        圖4. CPU1 中斷子程序 INT_0

        2、CPU2 編程
        2.1、CPU2 主程序編程如圖5. 所示:

        圖5. CPU2主程序
        1. 設(shè)置 SMB30 = 2#00001001 (自由口通信,波特率 9600 bps,8 位數(shù)據(jù)位,無校驗(yàn))。
        2. 設(shè)置 SMB87 = 2#10010100,使用空閑線檢測(cè)為信息接收的起始條件,使用字符間定時(shí)器為信息接收的結(jié)束條件。
        3. 設(shè)置空閑線定時(shí)器 SMW90 = 5 ms,字符間定時(shí)器 SMW92 = 5 ms,允許最大接收字符個(gè)數(shù) SMB94 = 10。
        4. 連接中斷子程序 INT_0 到通信端口 0 接收完成事件,中斷子程序 INT_1 到通信端口 0 發(fā)送完成事件,并啟用中斷。
        5. 使用 SM0.1 調(diào)用 RCV 指令地執(zhí)行。

        2.2、 CPU2 接收完成中斷子程序 INT_0 編程

        中斷子程序INT_0用于讀取 CPU 實(shí)時(shí)時(shí)鐘,并調(diào)用 XMT 指令將實(shí)時(shí)時(shí)鐘信息發(fā)送出去。程序如圖如圖 6.所示。

        6. CPU2 接收完成中斷子程序 INT_0

        2.3、 CPU2 發(fā)送完成中斷子程序 INT_1 編程

        中斷子程序 INT_1 用于執(zhí)行 RCV 指令,并開始新的信息接收任務(wù)。程序如圖 7.所示。

        圖7. CPU2 發(fā)送完成中斷子程序 INT_0

        以上描述步驟參考下面的通信例程,例程中的 CPU 類型可能與用戶實(shí)際使用的類型不同,用戶可能需要先對(duì)例子程序做修改和調(diào)整,才能將其用于測(cè)試。

        CPU1通信例程

        CPU2通信例程

         注意:此指令庫(kù)/程序的作者和擁有者對(duì)于該軟件的功能性和兼容性不負(fù)任何責(zé)任。使用該軟件的風(fēng)險(xiǎn)完全由用戶自行承擔(dān)。由于它是免費(fèi)的,所以不提供任何擔(dān)保,錯(cuò)誤糾正和熱線支持,用戶不必為此聯(lián)系西門子技術(shù)支持與服務(wù)部門。

        例程 3:使用任意字符檢測(cè)為接收消息的起始條件時(shí),選擇消息定時(shí)器和其它結(jié)束條件組合為接收消息的結(jié)束條件

        示例說明如下:
        步驟一、使用任意字符檢測(cè)和消息定時(shí)器處理信息接收超時(shí)主程序編程,程序如圖1. 所示:

        圖 1. 使用任意字符檢測(cè)和消息定時(shí)器處理信息接收超時(shí)主程序
        1. 設(shè)置 SMB30 = 2#00001001 (自由口通信,波特率 9600 bps,8 位數(shù)據(jù)位,無校驗(yàn))。
        2. 設(shè)置 SMB87 = 2#10111100,使用任意字符檢測(cè)為信息接收的起始條件,使用消息定時(shí)器和結(jié)束字符為信息接收的結(jié)束條件。
        3. 設(shè)置結(jié)束字符 SMB89 = 16#0A。
        4. 設(shè)置空閑線定時(shí)器 SMW90 = 0 ms,消息定時(shí)器 SMW92 = 100 ms,允許最大接收字符個(gè)數(shù) SMB94 = 10。
        5. 連接中斷子程序 INT_0 到通信端口 0 發(fā)送完成事件9,并啟用中斷。
        6. 每秒鐘調(diào)用一次 XMT 指令,將字符串"TEST"發(fā)送出去。

        步驟二、使用任意字符檢測(cè)和消息定時(shí)器處理信息接收中斷子程序編程:

        發(fā)送完成中斷子程序用于執(zhí)行 RCV 指令,并開始新的信息接收任務(wù)。中斷子程序如圖 2. 所示。

        圖2. 使用任意字符檢測(cè)和消息定時(shí)器處理信息接收超時(shí)中斷子程序

        以上描述步驟參考下面的通信例程,例程中的 CPU 類型可能與用戶實(shí)際使用的類型不同,用戶可能需要先對(duì)例子程序做修改和調(diào)整,才能將其用于測(cè)試。

        超時(shí)處理1 通信例程

         注意:此指令庫(kù)/程序的作者和擁有者對(duì)于該軟件的功能性和兼容性不負(fù)任何責(zé)任。使用該軟件的風(fēng)險(xiǎn)完全由用戶自行承擔(dān)。由于它是免費(fèi)的,所以不提供任何擔(dān)保,錯(cuò)誤糾正和熱線支持,用戶不必為此聯(lián)系西門子技術(shù)支持與服務(wù)部門。

        例程 4:信息接收超時(shí),需要人為終止信息的接收

        S7-200 SMART CPU 在發(fā)送完成中斷中執(zhí)行 RCV 指令并捕捉信息接收開始時(shí)間,如果捕捉間隔時(shí)間超出一定時(shí)間依然未接收到信息,則認(rèn)為信息接收超時(shí),需要人為終止信息的接收。

        示例說明如下:
        步驟一:CPU 主程序編程
        CPU 主程序?qū)崿F(xiàn)功能如下(程序見如圖3. 所示):
        a)設(shè)置 SMB30 = 2#00001001 (自由口通信,波特率 9600 bps,8 位數(shù)據(jù)位,無校驗(yàn))。
        b)設(shè)置 SMB87 = 2#10010100,使用空閑線檢測(cè)為信息接收的起始條件,使用字符間定時(shí)器為信息接收的結(jié)束條件。
        c)設(shè)置空閑線定時(shí)器 SMW90 = 5 ms,消息定時(shí)器 SMW92 = 5 ms,允許最大接收字符個(gè)數(shù) SMB94 = 10。
        d)連接中斷子程序 INT_0 到通信端口 0 發(fā)送完成事件 9,并啟用中斷。
        e)使用M0.0 上升沿調(diào)用 XMT 指令,并設(shè)置通信狀態(tài)字節(jié) VB300 =1。
        f)當(dāng)通信狀態(tài)字節(jié) VB300 = 2 時(shí),信息接收完成或者信息接收的捕捉間隔時(shí)間 VD306 大于 100 ms,則設(shè)置通信狀態(tài)字節(jié) VB300 = 3并人為終止 RCV 指令的執(zhí)行。
        g)通信狀態(tài)字節(jié)VB300 = 3時(shí),復(fù)位RCV指令的執(zhí)行,并復(fù)位VB300。


        圖3. 使用捕捉時(shí)間間隔處理信息接收超時(shí)主程序

        步驟二:CPU 中斷子程序編程

        在發(fā)送完成中斷子程序中設(shè)置通信狀態(tài)字節(jié) VB300 = 2,執(zhí)行 RCV 指令開始新的信息接收任務(wù),并捕捉信息接收開始時(shí)間 VD302。程序圖如圖4. 所示。


        圖4. 使用捕捉時(shí)間間隔處理信息接收超時(shí)中斷子程序

        以上描述步驟參考下面的通信例程,例程中的 CPU 類型可能與用戶實(shí)際使用的類型不同,用戶可能需要先對(duì)例子程序做修改和調(diào)整,才能將其用于測(cè)試。

        超時(shí)處理2 通信例程

         注意:此指令庫(kù)/程序的作者和擁有者對(duì)于該軟件的功能性和兼容性不負(fù)任何責(zé)任。使用該軟件的風(fēng)險(xiǎn)完全由用戶自行承擔(dān)。由于它是免費(fèi)的,所以不提供任何擔(dān)保,錯(cuò)誤糾正和熱線支持,用戶不必為此聯(lián)系西門子技術(shù)支持與服務(wù)部門。

        用手機(jī)掃描二維碼關(guān)閉
        RM新时代注册|首入球时间
        <div id="4aewj"></div>

          
          
            1. <rp id="4aewj"><nobr id="4aewj"><s id="4aewj"></s></nobr></rp>
              <div id="4aewj"></div>

                
                
                  1. <rp id="4aewj"><nobr id="4aewj"><s id="4aewj"></s></nobr></rp>
                    RM新时代网站 新时代RM平台官网 新时代RM娱乐app软件 RM新时代平台 RM新时代平台网址