回覆列表
  • 1 # 控制研究控

    又遇到一個專業問題,再來答一答,看看有人看麼?

    你這個第三個圖片程式怎麼寫的看不清楚,所以很可能你的程式寫的有問題?

    我做了一個你的程式,當然和你的相似但是不一樣,你可以看看:

    這個是FC1中的SCL程式,我估計你這裡的程式寫的有問題,或者變數的名義有問題!

    下邊就是在OB1中呼叫的程式監控圖:

    我這個程式執行起來沒有問題,M0.0為1後,10S鍾後M10.0就會為1!

    另外,你的圖片擋住了你的程式,如果是如說的IEC定時器的問題,建立你重新寫一下FC1中的程式!因為STEP7中的IEC定時器和博圖中的定時器有些不一樣,因此如果你是從STEP7中轉過來的就需要再自己重新處理一下!

  • 2 # Silence46400710

    這個警告的中文提示翻譯上有點問題,英文原文是parameter #xxx might not be initialized.

    意思是引數xxx可能未被初始化。

    在函式或函式塊中,output引數一般只用來被賦值,不用來讀操作,因為存在未被初始化的風險,

    如果你的程式是這樣:

    if 條件1 then

    o_output1:=true;

    end_if;

    if o_output1 then

    xxxxx;

    end_if;

    這麼寫第四行肯定會報warning,因為o_output1只有在條件1滿足的情況下才會被賦值true,如果條件1不滿足,它的值是多少呢?true?false?答案是不確定,它的值將是上一次掃描週期的值

    這種不確定可能會對程式執行帶來風險,所以博途編譯時會有warning提示

  • 3 # 儒拉小鎮

    標準單元程式塊不推薦使用fc。因為你可能有好幾個氣缸。你可以使用FB。

    fc不包含static靜態變數,FB有。那個時間繼電器,Ton_time可以使用靜態變數,而不用專門建一個db塊作為背景塊。

    fc塊,temp變數和輸出out都是隨機的,bool量可能是0或者1。不使用時候,輸出的out會報錯。可以在程式最上面寫上

    氣缸輸出線圈:=0;

    氣缸工作線圈:=0;

    後面是你的程式。

  • 中秋節和大豐收的關聯?
  • 混動汽車中哪一品牌指標優異呢?