精品视频一区二区观看,欧美一区二区视频三区,日韩一区二区三区不卡,欧美中文综合在线视频,欧美综合网亚洲综合网

      ? ? ? ?

      咨詢電話

      ENGLISH0755-88840386
      新聞中心

      咨詢電話

      0755-88840386
      您的位置:首頁 > 學(xué)習(xí)專題 > 專業(yè)技術(shù)專題 > 工業(yè)自動(dòng)化稱重儀表>詳情頁

      基于STM32的6通道稱重控制儀表設(shè)計(jì)

      發(fā)布時(shí)間:2020-10-12 11:34:58 |來源:

      1引言
      稱重控制儀表是一種實(shí)時(shí)測量物料重量并根據(jù)重量自動(dòng)發(fā)出控制信號(hào)的智能儀器,廣泛應(yīng)用于包裝、罐裝等工藝流程中。市場上高性能、功能完備的稱重控制儀表也比較常見⑵。但是單個(gè)儀表在控制速度上已基本達(dá)到了極限,在大批量包裝、罐裝任務(wù)中需要多臺(tái)機(jī)器結(jié)合,且各臺(tái)機(jī)器設(shè)置參數(shù)不一,控制結(jié)果參差不齊。因此,設(shè)計(jì)一種多通道同步采樣控制的儀表不僅可以提高機(jī)器的集成度和控制結(jié)果的統(tǒng)一性,而且可以成倍地提高工作效率,減少人力勞動(dòng)。
      2儀表的工作原理
      物料包裝、罐裝系統(tǒng)主要由儲(chǔ)料器、高低速出料口、稱重平臺(tái)機(jī)構(gòu)和稱重控制儀表組成。稱重控制儀表作為控制核心,通過稱重平臺(tái)實(shí)時(shí)測量平臺(tái)的重量,判斷平臺(tái)重量是否與設(shè)定皮重值相等,如果相等則判斷包裝或罐裝的外包裝已就緒,然后開始通過高低速出料口往外包裝快速填充物料,當(dāng)物料填充到指定重量則切換到低速填充直到和目標(biāo)重量-提前量相等,當(dāng)留在空中的物料完全落入包裝后,和目標(biāo)重量相等。6通道稱重控制儀表是把6個(gè)這樣的機(jī)構(gòu)同時(shí)控制達(dá)到提高效率和集成度的效果。
      3硬件設(shè)計(jì)
      儀表的硬件框圖如圖1所示,儀表的硬件按照功能分為電源模塊、STM32嵌入式模塊、ADC同步采樣模塊、通信模塊和IO模塊。由于稱重儀表應(yīng)
      用在各種干擾均存在工業(yè)的環(huán)境中,因此各個(gè)模塊間的信號(hào)和電源均采用隔離方式連接,一方面可以減少模塊間的串?dāng)_,另一方面可以在某一模塊因外部異常受到?jīng)_擊時(shí),避免對(duì)其他部分造成影響而達(dá)到保護(hù)其他模塊的目的⑶。儀表的主控芯片為STM32F103ZET6,與LCD12864、矩陣鍵盤、外部非易失性存儲(chǔ)器組成嵌入式單元模塊。通過LCD12864、矩陣鍵盤、外部非易失性存儲(chǔ)器作為基本參數(shù)的設(shè)置和存儲(chǔ)。因?yàn)?通道稱重控制儀表需要顯示的內(nèi)容和參數(shù)較單通道的儀表要多得多,所以采用常用的LED或LCD12864已經(jīng)達(dá)不到操作簡單的目的。因此,功能參數(shù)通過通信模塊與10寸MCGS工業(yè)觸摸屏進(jìn)行人機(jī)交互。用于稱重
      的6個(gè)稱重傳感器分別與各通道獨(dú)立的CS5532芯片連接。CPU實(shí)時(shí)讀取傳感器的重量信號(hào),并通過數(shù)字濾波⑷、工程單位變換、狀態(tài)檢測后,一方面把儀表的工作狀態(tài)和各通道實(shí)時(shí)重量實(shí)時(shí)顯示到MCGS觸摸屏上,另一方面通過重量比對(duì)、動(dòng)作判物料的定量控制。
      3.1電源模塊設(shè)計(jì)
      電源模塊電路如圖2所示。采用24V直流電源進(jìn)行供電,減小儀表的體積和減少電源的發(fā)熱量。通過MP2303同步降壓電路后,得到12V左右的穩(wěn)定電壓,再使用IR2085S和FDS8689組成半橋式電子變壓器的驅(qū)動(dòng)。式(1)為半橋式變壓器次/初級(jí)匝數(shù)比計(jì)算公式。由半橋式變壓器匝數(shù)比計(jì)算公式可知,在通過變壓器后整流得到各路相對(duì)比較穩(wěn)定的電壓5。再經(jīng)線性穩(wěn)壓器進(jìn)一步調(diào)整,得到滿足系統(tǒng)工作的穩(wěn)定電壓。

      電源模塊電路圖

      3.2STM32嵌入式模塊
      由于該儀表相當(dāng)于6個(gè)單通道的稱重控制儀表,所以在主控制器方面要求相對(duì)比較高。于是選用意法半導(dǎo)體公司的STM32F103ZET6芯片。該芯片為32二方數(shù)據(jù)TM-M3ARM處理器在0等待內(nèi)存訪問時(shí)具備1.25DMIPS/MHz(Dhrystone2.1)的計(jì)算能力,還具備單周期乘法器和硬件除法器,最高時(shí)鐘達(dá)到72MHz,有512KB程序空間和64KB數(shù)據(jù)空間⑹,各方面指標(biāo)均是文獻(xiàn)[2]設(shè)計(jì)采用的W77E58性能的好幾倍,所以基本能夠滿足設(shè)計(jì)需求。在人機(jī)接口方面,采用矩陣鍵盤和LCD12864。LCD12864選用ST7290為主控圖形液晶,采用串行
      方式與ARM處理器USART3連接,以方便采用USART3的同步方式直接與LCD12864通信。但是由于LCD12864顯示有限,所以此人機(jī)接口僅作為基本參數(shù)的配置使用。如通信波特率,Modbus地址等。由于STM32沒有內(nèi)部EEPROM,但是稱重儀表需要掉電保存諸如校準(zhǔn)參數(shù)、通信參數(shù)等數(shù)據(jù),因此需要外加非易失性存儲(chǔ)器。于是選用SPI接口的鐵電存儲(chǔ)芯片F(xiàn)M25CL64,該芯片容量為8KB,采用SPI通信接口,通信時(shí)鐘達(dá)到20MHz,大量減少了參數(shù)讀寫的時(shí)間,使CPU能夠及時(shí)處理稱重?cái)?shù)據(jù)。
      3.3ADC同步采用模塊
      儀表需要采集6通道稱重信號(hào),如果6片CS5532采用異步采樣方式,那么有可能打斷CPU正在處理其他通道的數(shù)據(jù),造成控制異常。所以該模塊考慮使用同步方式進(jìn)行轉(zhuǎn)換。此時(shí),6個(gè)通道轉(zhuǎn)換的開始時(shí)間和完成時(shí)間是完全同步的,所以在檢測到轉(zhuǎn)換完成時(shí),可以安排在同一時(shí)間間隙內(nèi)按順序讀出AD數(shù)據(jù)。圖3為ADC同步采樣模塊電路圖。由電路圖可見6片IC的SCK、SDO、SDI、MCLK是共用的,其中MCLK為CS5532的系統(tǒng)時(shí)鐘,MCLK共用配合控制指令控制6片IC同時(shí)開始轉(zhuǎn)換以達(dá)到同步轉(zhuǎn)換的目的⑺。采用2mv/V的稱重傳感器在激勵(lì)電壓為5V時(shí),滿量程輸出為10mV。CS5532內(nèi)部PGA最大放大倍數(shù)為64倍,放大后的滿量程電壓為640mV。如果采用激勵(lì)電壓5V作為CS5532的參考電壓,則滿量程時(shí)24位AD的量程利用率640mV/5V=12.8%。因此把5V激勵(lì)電壓通過R1.R2.R3分壓后得到CS5532參考電壓的最低允許值1VO24位AD的量程利用率提高至640mV/1V=64%,并且有36%的余量防止輸入電壓過高損壞芯片。

      同步采樣模塊電路圖

      3.4通信模塊
      儀表的通信模塊使用RS232電路和RS485電路。RS232和RS485均使用ModbusRTU協(xié)議進(jìn)行通信,但是設(shè)備地址、通訊波特率均獨(dú)立并可以同時(shí)工作。在工業(yè)系統(tǒng)中RS232電路主要用于點(diǎn)對(duì)點(diǎn)通信。在本儀表中用于連接觸摸屏。RS485可以多機(jī)通信,主要用于工控系統(tǒng)組網(wǎng)。使用AD-UM1402磁耦把CPU和通信電路隔離,減少CPU和通信電,并能在通信線路上電壓出現(xiàn)異常時(shí)有效保護(hù)CPU電路。通信電平轉(zhuǎn)換芯片分別采用常見的MAX232和MAX485o在信號(hào)連接端加入自恢復(fù)保險(xiǎn)和瞬態(tài)抑制二極管作為外部高壓的串入保護(hù)⑻。
      3.5IO模塊
      由于IO模塊的輸出部分主要用于驅(qū)動(dòng)電磁閥,所以采用TLP281光耦進(jìn)行隔離,ULN2803達(dá)林頓管陣列作為線圈驅(qū)動(dòng)芯片并采用外部電源供電方式減少儀表內(nèi)部的體積和功耗。輸入部分也采
      用TLP281作為隔離IC,外接傳感器應(yīng)選為PNP輸出型。輸入輸出部分示意電路圖如圖4所示。

      輸入輸出部分電路圖

      圖4輸入輸出部分電路圖
      4軟件設(shè)計(jì)
      系統(tǒng)軟件設(shè)計(jì)包括STM32嵌入式軟件設(shè)計(jì)和MCGS人機(jī)界面軟件設(shè)計(jì)。STM32嵌入式軟件主要負(fù)責(zé)實(shí)時(shí)數(shù)據(jù)處理和實(shí)時(shí)控制。MCGS人機(jī)界面軟件主要負(fù)責(zé)系統(tǒng)參數(shù)配置、人機(jī)交互圖形設(shè)計(jì)和一些非實(shí)時(shí)的數(shù)據(jù)處理和控制。這樣處理使得STM32處理事務(wù)方面更專注,在控制精度方面能得到更好的效果,程序編寫也更簡潔。
      4.1嵌入式軟件設(shè)計(jì)
      STM32程序的主要任務(wù)有:稱重信號(hào)采集和處理,輸入輸出控制,2個(gè)串口的modbusRTU通信。其中稱重號(hào)采集處理,輸入輸出控制,modbusRTU通信對(duì)實(shí)時(shí)性要求都比較高,如果處理不好可能出現(xiàn)程序混亂控制不準(zhǔn)確的問題。因此在處理這些信號(hào)時(shí)需要格外小心。在本儀表中處理方案如下:使用外中斷偵測ADC轉(zhuǎn)換完成,把ADC數(shù)據(jù)讀取中斷置于最高優(yōu)先級(jí),把串口接收中斷位于次優(yōu)先級(jí),串口數(shù)據(jù)發(fā)送使用DMA方式。在ADC完成中斷服務(wù)程序中同時(shí)進(jìn)行端口輸入讀取和端口輸出更新操作,保證端口更新時(shí)間間隔一致,不受其他中斷影響。
      儀表的主函數(shù)流程圖如圖5(a)所示,首先初始化芯片端口,然后從鐵電存儲(chǔ)器讀取保存的參數(shù),根據(jù)讀取到的參數(shù)配置串口.ModbusRTU地址、稱重校準(zhǔn)參數(shù)和一些必要的其他參數(shù)。最后在循環(huán)中掃描鍵盤,更新LCD顯示和后臺(tái)數(shù)據(jù)處理。
      AD轉(zhuǎn)換結(jié)束中斷處理具有最高優(yōu)先等級(jí),實(shí)時(shí)性最高。其流程圖如圖5(b),當(dāng)AD轉(zhuǎn)換結(jié)束時(shí),數(shù)據(jù)輸出引腳由高變低產(chǎn)生數(shù)據(jù)下降沿,觸發(fā)AD轉(zhuǎn)換結(jié)束中斷,于是STM32讀取第一片CS5532的AD數(shù)據(jù),然后選擇另一片CS5532讀取AD數(shù)據(jù),按順序讀取完6個(gè)通道的數(shù)據(jù)后,對(duì)端口的輸入輸出進(jìn)行更新。因?yàn)樽x取AD數(shù)據(jù)時(shí)沒有條件跳轉(zhuǎn)語句,所以從中斷到讀取數(shù)據(jù)完成的時(shí)間是固定的。又由于AD轉(zhuǎn)換完成的頻率固定為240Hz,所以端口的更新也嚴(yán)格為240Hz。端口更新后再對(duì)AD數(shù)據(jù)進(jìn)行滑動(dòng)平均數(shù)字濾波9。然后進(jìn)行工程單位轉(zhuǎn)換,通過一定時(shí)間內(nèi)的重量信號(hào)分析判斷傳感器是否處于穩(wěn)定狀態(tài),為后續(xù)稱重流程控制提供控制信號(hào)。然后進(jìn)行稱重流程控制比對(duì)并改變輸出標(biāo)志位,為下一次端口更新做準(zhǔn)備。最后中斷返回。
      ModbusRTU®采用3.5T時(shí)間間隔作為幀間識(shí)別,所以在使用時(shí)需要一個(gè)定時(shí)間計(jì)算3.5T溢出時(shí)間。數(shù)據(jù)接收使用中斷方式。流程圖如圖5(c)所示,當(dāng)串口接收到數(shù)據(jù)時(shí),進(jìn)入中斷,把數(shù)據(jù)讀出放到幀緩沖區(qū),如果為幀第一個(gè)數(shù)據(jù)則啟動(dòng)定時(shí)器,否則清零定時(shí)器防止3.5T超時(shí)溢出中斷。直到一個(gè)幀接收結(jié)束,ModbusRTU主機(jī)在3.5T時(shí)間內(nèi)不再發(fā)送數(shù)據(jù),3.5T定時(shí)器沒有清零,直到溢出,執(zhí)行3.5T定時(shí)器溢出中斷程序,流程圖如圖5(d)。當(dāng)3.5T中斷時(shí),說明完成1幀數(shù)據(jù)接收,首先進(jìn)行CRC校驗(yàn),如果校驗(yàn)正確則進(jìn)行地址校驗(yàn),否則拋棄錯(cuò)誤幀中斷返回。地址校驗(yàn)正確則根據(jù)指令對(duì)內(nèi)部數(shù)據(jù)進(jìn)行讀寫,最后使用DMA方式返回?cái)?shù)據(jù)到主機(jī)以減少發(fā)送中斷對(duì)CPU的占用。如果地址校驗(yàn)錯(cuò)誤則放棄數(shù)據(jù)處理,中斷返回。

      程序流程圖

      4.2MCGS軟件設(shè)計(jì)
      MCGS嵌入版是專門應(yīng)用于嵌入式計(jì)算機(jī)監(jiān)控系統(tǒng)的組態(tài)軟件,通過對(duì)現(xiàn)場數(shù)據(jù)的采集處理,以動(dòng)畫顯示、報(bào)警處理、流程控制和報(bào)表輸出等多種方式向用戶提供解決實(shí)際工程問題的方案,在自動(dòng)化領(lǐng)域有著廣泛的應(yīng)用[11]0軟件開發(fā)采用MC-GSE組態(tài)環(huán)境。設(shè)備組態(tài)選擇莫迪康ModbusRTU作為與本儀表的通訊設(shè)備。在通道連接中每個(gè)變量使用32位有符號(hào)變量或32位無符號(hào)變量。每個(gè)變量與STM32中的變量——對(duì)應(yīng)。這樣MCGS在數(shù)據(jù)變化時(shí)自動(dòng)與STM32傳輸,數(shù)據(jù)不變時(shí)定時(shí)讀取STM32中的數(shù)據(jù)。在用戶窗口中添加相關(guān)的交互窗口并設(shè)計(jì),做好控件后與對(duì)應(yīng)變量連接。就可以與下位機(jī)交互通信了。該儀表的主控制界面如圖6所示。通過使用MCGS觸摸屏人機(jī)界面簡化STM32人機(jī)交互程序的編寫,同時(shí)通過修改MC-GSE組態(tài)環(huán)境根據(jù)客戶需求修改界面簡單快捷,通用性較好。

      主控制界面圖

      圖6主控制界面

      5測試與結(jié)論
      使用橋式稱重傳感器型號(hào)為MT1022,量程10kg的傳感器。表1數(shù)據(jù)為對(duì)稱重儀表進(jìn)行校準(zhǔn)后放入不同質(zhì)量的砝碼對(duì)儀表的準(zhǔn)確性進(jìn)行檢測。從表中可看出儀表在整個(gè)量程范圍內(nèi)準(zhǔn)確度非常高。

      重量測試數(shù)據(jù)表


      表2為灌裝320g油漆規(guī)格數(shù)據(jù)。測量步驟為:設(shè)定目標(biāo)值為凈重320g,提前量50g,放上罐,通過“置皮”功能設(shè)定皮重,開始一次灌裝,得到實(shí)際凈重與目標(biāo)值凈重的差值,通過儀表的提前量計(jì)算功能調(diào)整提前量設(shè)定。然后進(jìn)行10次灌裝試驗(yàn)并記
      錄。通過表格數(shù)據(jù)可見,儀表的灌裝控制精度在土2g范圍內(nèi),達(dá)到了廠方的要求。

      灌裝試驗(yàn)結(jié)果表

      6結(jié)語
      6通道控制儀表在控制數(shù)量上提高了6倍,解決了單/雙通道儀表同時(shí)控制通道少的問題。控制數(shù)量增加,操作也較簡單,一致性好,總體速度更快,效率更高。

       

      文章來源于網(wǎng)絡(luò)轉(zhuǎn)載,侵刪

      分享到