STEP1:開發一個編程軟件,所有梯形圖的元件或功能塊用控件實現,真正要實現的控件只要大概十個左右,如功能塊,不同的功能塊顯示主要通過不同的功能塊號或元件(函數號)去ini文件找對應記錄。
STEP2:用戶在把控件拖上編輯窗口時在控件內將對應的功能塊號、參數、變量名寫入一個中間文件。
STEP3:通過對中間文件的掃描、語法檢查、重定位后生成對應的LD文件,這時所有的變量都是變量區的偏移地址。這個過程一般要三至四次才能完成,如果要優化可能還需要多的處理,如果要做增量編譯還要需要做這方面的處理。至于在線編程則需要在生成的中間文件中做更多的標志和處理。
STEP4:將文件下載至PLC,這樣就會有一個比較完備的通信協議,這方面最好一開始就想好,如果不要在線編程可能還簡單一點,只是對下載、上載、監視、強制、設置、參數、初始化列表等有比較清楚的概念就行了。
STEP5:程序下至PLC后,PLC在每次上電后要先進行各種軟硬件的初始化,包括掉電保持的變量或輸入輸出口的處理,各種寄存器或標志的初始化。
STEP6:初始化完后進行程序的掃描運行,在掃描時其實是一個很簡單的分支程序,這個程序前要進行取指取參再通過分支程序進行跳跳轉運算。其實大家都把這一塊當作PLC的核心,相反這一塊是最簡單的,當然如果要做優化倒還是有很多講究要對CPU的原理、對編譯原理有比較清楚的認識。 字串4
STEP7:其實下位機就相當于一個軟的CPU,包括程序指針、變量指針、堆棧指針等都是應有盡有。
STEP8:每次掃描完畢后要進行IO的處理,這一塊是最簡單但又是最復雜的,簡單做做誰都能做,但要做到高效和智能化就需要有比較好的規劃。
STEP9:通信是通過中斷來處理或者在中斷中接收發送,但在IO處理后進行幀的處理。
STEP10:在IO處理后可以加一個工程量變換的程序進行模擬量的處理。同時如果有調試需要的還需要與IO點數一樣多位的表來進行處理強制和監視等信息。
STEP11:定時器、高速計數、中斷型梯形圖、各種通信協議、自定義通信協議、脈沖輸出、PWM等,這些是可選項,當然如果沒有定時器就不是PLC了。
STEP2:用戶在把控件拖上編輯窗口時在控件內將對應的功能塊號、參數、變量名寫入一個中間文件。
STEP3:通過對中間文件的掃描、語法檢查、重定位后生成對應的LD文件,這時所有的變量都是變量區的偏移地址。這個過程一般要三至四次才能完成,如果要優化可能還需要多的處理,如果要做增量編譯還要需要做這方面的處理。至于在線編程則需要在生成的中間文件中做更多的標志和處理。
STEP4:將文件下載至PLC,這樣就會有一個比較完備的通信協議,這方面最好一開始就想好,如果不要在線編程可能還簡單一點,只是對下載、上載、監視、強制、設置、參數、初始化列表等有比較清楚的概念就行了。
STEP5:程序下至PLC后,PLC在每次上電后要先進行各種軟硬件的初始化,包括掉電保持的變量或輸入輸出口的處理,各種寄存器或標志的初始化。
STEP6:初始化完后進行程序的掃描運行,在掃描時其實是一個很簡單的分支程序,這個程序前要進行取指取參再通過分支程序進行跳跳轉運算。其實大家都把這一塊當作PLC的核心,相反這一塊是最簡單的,當然如果要做優化倒還是有很多講究要對CPU的原理、對編譯原理有比較清楚的認識。 字串4
STEP7:其實下位機就相當于一個軟的CPU,包括程序指針、變量指針、堆棧指針等都是應有盡有。
STEP8:每次掃描完畢后要進行IO的處理,這一塊是最簡單但又是最復雜的,簡單做做誰都能做,但要做到高效和智能化就需要有比較好的規劃。
STEP9:通信是通過中斷來處理或者在中斷中接收發送,但在IO處理后進行幀的處理。
STEP10:在IO處理后可以加一個工程量變換的程序進行模擬量的處理。同時如果有調試需要的還需要與IO點數一樣多位的表來進行處理強制和監視等信息。
STEP11:定時器、高速計數、中斷型梯形圖、各種通信協議、自定義通信協議、脈沖輸出、PWM等,這些是可選項,當然如果沒有定時器就不是PLC了。
























粵公網安備 44030402000745號