最近開(kāi)發(fā)了一款智能電焊臺(tái),采用PID算法進(jìn)行溫度控制,并隨手設(shè)計(jì)了一個(gè)溫度采集工具,現(xiàn)在開(kāi)源給大家,由于是公司項(xiàng)目并不開(kāi)放智能焊臺(tái)的代碼與圖紙,只開(kāi)源PID溫度采集工具和PID算法代碼。
工作原理:
PID的參數(shù)值通過(guò)串口發(fā)送給下位機(jī),下位機(jī)安裝此參數(shù)進(jìn)行PID運(yùn)行,后轉(zhuǎn)換為PWM波開(kāi)關(guān)mos管,從而控制手柄的溫度值。手柄上的溫度是通過(guò)AD采集手柄上的溫度傳感器實(shí)現(xiàn),采樣頻率為10ms一次,而控制PID的運(yùn)算和PWM波的輸出則采用300ms的時(shí)間。至于為什么是這個(gè)值,這個(gè)是沒(méi)有理由的,是通過(guò)系統(tǒng)特性調(diào)節(jié)出來(lái)的,而且PID的初始化值已經(jīng)放大了100倍。
串口上傳溫度數(shù)據(jù)格式:
PID代碼說(shuō)明:代碼非常簡(jiǎn)單,程序架構(gòu)采樣的是我自己設(shè)計(jì)的時(shí)間片輪詢,所以實(shí)現(xiàn)這些時(shí)間是非常簡(jiǎn)單的。PWM是通過(guò)定時(shí)器實(shí)現(xiàn)的,PWM波的頻率為100Hz。
部分截圖:
PID溫度采集上位機(jī)說(shuō)明:本工具采用VB6.0編程,通過(guò)串口進(jìn)行溫度,PWM等參數(shù)的傳遞,最好通過(guò)畫圖的形式表現(xiàn)出來(lái)