RM新时代网站-首页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

FC對輸出的錯誤處理

機器人及PLC自動化應用 ? 來源:機器人及PLC自動化應用 ? 作者:微笑應對 ? 2022-11-09 16:51 ? 次閱讀

對于 FC的使用,另一個的常見的錯誤是對輸出的錯誤處理:導致這個錯誤的原因還是對FC認識的不清楚。

再次強調(diào):相比較于 FB,FC是一個沒有存儲空間的邏輯塊。

如果沒有數(shù)據(jù)被寫至 FC 的 OUT參數(shù),F(xiàn)C將會輸出一個隨機值!對于 FB, 因為其可以使用背景數(shù)據(jù)塊來存儲 OUT參數(shù)的數(shù)值,即使某次調(diào)用沒有對 OUT參數(shù)進行寫操作,OUT參數(shù)依然可以輸出上一次的舊值。

下面的程序?qū)⒄f明這一點:程序原本目的:

在 OB1中調(diào)兩次 FC22,將 MW0,MW2作為輸入?yún)?shù),DB1.DBX0.0,DB1.DBX0.1分別作為輸出參數(shù)賦給 FC22

FC22檢測當輸入大于 10時,置位輸出為 1FC22檢測當輸入小于-10時,復位輸出為 0 FC22的輸出的動作死區(qū)為-10至 10

此程序乍看是沒有錯誤的,但是,如果 OB1中調(diào)用了兩次 FC22,而且 MW2位于死區(qū)(-10 至10)之間時,MW0的數(shù)值改變將不僅僅改變 DB1.DBX0.0的狀態(tài),同時會影響輸出 DB1.DBX0.1的數(shù)值。

7c4a9650-6008-11ed-8abf-dac502259ad0.png

故障分析:在上面的例子,OB1中調(diào)用了兩次 FC22,而且 MW2位于死區(qū)(-10至 10)之間時,其輸出在FC22沒有被賦值,DB1.DBX0.1正常情況下不應當改變數(shù)值。

本例中,MW0的數(shù)值改變將不僅僅改變DB1.DBX0.0的狀態(tài),同時會影響輸出 DB1.DBX0.1的數(shù)值。如下圖。

7c73804c-6008-11ed-8abf-dac502259ad0.png

對于 FC的輸出變量,必須要在每次執(zhí)行 FC時賦給一個確定的值,否則輸出有可能會輸出一個隨機值。下列用法都是錯誤的:

將輸出變量用于上升/下降沿指令

將輸出變量用于自保持邏輯

輸出變量未在所在程序段中賦值

警告:不要因為在 FC編程中遇到?jīng)]有對輸出賦值,而程序執(zhí)行正確,就忽略了對 FC輸出編程的注意事項,否則將承擔這個錯誤有可能帶來的風險。

建議:

用 IN/OUT 變量代替 OUTPUT 變量

不論何時調(diào)用塊,F(xiàn)C中的OUT參數(shù)都必須被賦值。




審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • MFC編程
    +關(guān)注

    關(guān)注

    0

    文章

    8

    瀏覽量

    6249

原文標題:FC 輸出處理

文章出處:【微信號:gh_a8b121171b08,微信公眾號:機器人及PLC自動化應用】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    嵌入式編程錯誤處理機制設(shè)計

    本文主要總結(jié)嵌入式系統(tǒng)C語言編程中,主要的錯誤處理方式。文中涉及的代碼運行環(huán)境如下。
    發(fā)表于 04-28 09:59 ?762次閱讀
    嵌入式編程<b class='flag-5'>錯誤處理</b>機制設(shè)計

    嵌入式系統(tǒng)C語言編程中主要的錯誤處理方式

    本文主要總結(jié)嵌入式系統(tǒng)C語言編程中,主要的錯誤處理方式。
    發(fā)表于 07-24 16:40 ?922次閱讀
    嵌入式系統(tǒng)C語言編程中主要的<b class='flag-5'>錯誤處理</b>方式

    Rust語言中錯誤處理的機制

    在Rust語言中,錯誤處理是一項非常重要的任務。由于Rust語言采用靜態(tài)類型檢查,在編譯時就能發(fā)現(xiàn)很多潛在的錯誤,這使得程序員能夠更加自信和高效地開發(fā)程序。然而,即使我們在編譯時盡可能地考慮了所有
    的頭像 發(fā)表于 09-19 14:54 ?1404次閱讀

    嵌入式C編程常用的異常錯誤處理

    信息記錄到非易失性存儲器或通過串口輸出。 總結(jié) 嵌入式C編程中的異常錯誤處理方法多種多樣,選擇合適的方法取決于具體的應用場景和系統(tǒng)要求。通過合理的錯誤處理機制,可以提高系統(tǒng)的穩(wěn)定性和可靠性。
    發(fā)表于 08-06 14:32

    labviEW錯誤處理的問題

    為什么這個程序在啟用自動錯誤處理和C:\data.txt不存在的情況下,沒有顯示錯誤對話框?。?/div>
    發(fā)表于 04-01 10:03

    LabVIEW錯誤處理問題

    我想問一下,就是連接硬件采集波形時,需要濾掉直流波,但是采集到的波形時斷斷續(xù)續(xù)的,所以錯誤處理時會停止程序,我想問一下,運行時怎么忽略掉這個錯誤
    發(fā)表于 09-18 18:29

    AF錯誤處理

    想問一下關(guān)于AF的錯誤處理,例如我進行串口通訊,打開串口錯誤,但是我不想停止AF,想繼續(xù)嘗試連接要怎么做?
    發(fā)表于 02-03 15:44

    LabVIEW中的錯誤處理

    如何合理使用 LabVIEW 中的自定義錯誤處理功能;對于可預見的錯誤,是否可以選擇直 接忽略,或者前幾次嘗試忽略直到該特定錯誤出現(xiàn)很多次后才通知用戶需要糾正該錯誤 了;是否可以對
    發(fā)表于 05-24 11:07 ?6次下載

    Spring Boot框架錯誤處理

    》 《strong》翻譯《/strong》:雁驚寒《/p》 《/blockquote》《p》《em》摘要:本文通過實例介紹了使用Spring Boot在設(shè)計API的時候如何正確地對異常進行處理。以下是譯文《/em》《/p》《p》API在提供錯誤消息的同時進行適當?shù)?/div>
    發(fā)表于 09-28 15:31 ?0次下載

    嵌入式系統(tǒng)C語言編程中的錯誤處理資料總結(jié)

    本文主要總結(jié)嵌入式系統(tǒng)C語言編程中,主要的錯誤處理方式。文中涉及的代碼運行環(huán)境如下:
    發(fā)表于 11-28 10:39 ?1924次閱讀

    Rust代碼啟發(fā)之返回值異常錯誤處理

    這樣的代碼,錯誤處理代碼和業(yè)務邏輯交織在一起,也容易忽略處理錯誤。以及把返回值只用于錯誤返回,有點浪費的感覺。因為很多時候把計算結(jié)果作為返回值,更符合思考的邏輯。
    的頭像 發(fā)表于 09-22 09:24 ?2137次閱讀
    Rust代碼啟發(fā)之返回值異常<b class='flag-5'>錯誤處理</b>

    RS232通信時怎么處理錯誤?RS232通信中的錯誤處理方法

    RS232通信時怎么處理錯誤?RS232通信中的錯誤處理方法? RS232通信是一種電氣標準,它定義了計算機和串行通信設(shè)備之間的通信協(xié)議。盡管RS232通信很穩(wěn)定,但仍然可能會出現(xiàn)錯誤
    的頭像 發(fā)表于 10-17 16:33 ?3002次閱讀

    西門子博圖:錯誤處理機制概覽

    可通過以下幾種不同的錯誤處理機制進行參數(shù)跟蹤或編程或訪問錯誤
    的頭像 發(fā)表于 11-25 11:35 ?2811次閱讀
    西門子博圖:<b class='flag-5'>錯誤處理</b>機制概覽

    C語言中的錯誤處理機制解析

    C 語言不提供對錯誤處理的直接支持,但是作為一種系統(tǒng)編程語言,它以返回值的形式允許您訪問底層數(shù)據(jù)。
    的頭像 發(fā)表于 02-26 11:19 ?505次閱讀

    socket編程中的錯誤處理技巧

    Socket編程是網(wǎng)絡編程的基礎(chǔ),它允許程序之間通過TCP/IP協(xié)議進行通信。然而,網(wǎng)絡通信是不穩(wěn)定的,可能會遇到各種問題,如網(wǎng)絡延遲、連接中斷、數(shù)據(jù)丟失等。 錯誤處理的重要性 提高程序的健壯性
    的頭像 發(fā)表于 11-01 17:47 ?846次閱讀
    RM新时代网站-首页