程劍釗,王巧彬,曾偉龍,黃鏡雄,嚴 懿,梁穎怡
(廣州市光機電技術研究院,廣東廣州 510000)
隨著LED照明應用的快速普及,LED農業照明也得到了迅速發展,相關智能化設備發展迅速,LED的調光控制是LED農業照明智能化的主要方向。單片機(Microcon?trollers)作為計算機發展的一個重要分支領域,以其價格低廉和功能強大的特點,經過四十幾年的發展,長盛不衰。隨著智能化社會的提出,各種智能化儀器設備的涌現,單片機的應用領域越發廣泛,如智能儀表、實時工控、通訊設備、導航系統、家用電器等。智能化設備都要集成單片機和人機界面的應用。本文介紹到的工業觸摸屏采用串口和單片機連接,通信協議簡單實用,編程簡單,是專門應用在單片機系統的人機界面。
本系統采用新型工業觸摸屏和單片機結合作為控制器,實現LED植物生長燈的調光。利用觸摸屏的觸摸功能和友好的控制界面,用戶通過在觸摸屏上的觸控操作,輕松控制周圍LED植物生長燈的亮度和光譜組合。
本控制器采用STM32F103系列單片機作為控制核心,以廣州大彩科技生產的新型工業觸摸屏作為人機界面并通過串口連接到單片機,串口采用DMA發送方式[5],控制器和燈之間采用ZIGBEE無線連接。圖1是系統的硬件框圖。
STM32F103系列基于專為要求高性能、低成本、低功耗的嵌入式應用專門設計的ARM Cortex-M3內核,增強型系列時鐘頻率達到72 MHz,集成嵌入式Flash和SRAM存儲器的ARM Cortex-M3內核。和8/16位設備相比,ARM Cortex-M3 32位RISC處理器提供了更高的代碼效率[1,3-4,6-7]。
觸摸屏采用M3+FPGA+DRAM技術,有8圖層,圖片速度領先;擁有按鈕、文本、儀表、進度條、曲線、下拉、動畫和二維碼等組態控件;采用串口和單片機通訊,可通過跳線選擇232或TTL電平;屏上每一個觸控操作都會發送一串命令到單片機,而單片機也可以發送命令往屏上寫數字或文本[8]。圖2為本控制器觸摸屏的控制界面。

圖1 系統硬件

圖2 觸摸屏控制界面
本控制器軟件主要分為主程序和串口中斷程序兩部分。采用串口中斷接收觸摸屏傳來的命令,一旦收到完整的命令就設置一個收到命令標志通知主程序。主程序采取不斷循環查詢的方式,一旦發現收到觸摸屏的命令,就復位標志位,并把命令取下來進而根據命令去完成相應的動作。本系統既可以通過觸摸屏上的操控改變燈的亮度,也可以通過無線模塊接收總控的命令改變燈的亮度。同時,也可以通過無線模塊收集溫濕度等環境數據顯示在觸摸屏上,這樣就增加了軟件的復雜程度和編程的難度。本軟件采用了全局變量存放燈的更新位和燈的亮度值以及環境參數的更新位和數值。一旦這些值有改變,不用直接去設置它,而是把相應的更新位置1,并把更改的數值放到相應的變量。主程序采用輪詢的方式查看這些更新位,如果是1就做相應的設置并清除更新位。這樣可以很大程度減低軟件的復雜度和減小編程難度。圖3就是主程序中觸摸屏控制燈部分的流程圖。

圖3 主程序中觸摸屏控制燈部分的流程圖
觸摸屏發送給單片機的命令采用的是命令頭加命令尾中間內容不定長的格式。串口中斷程序在接收命令時采用先檢測命令頭,找到命令頭之后再檢測命令尾,找到命令尾后就設置收到命令標志。在接收過程中加入了等待超時處理,前后字符之間超過了設定的時間就會把前面接收到的作廢,重新接收。圖4是串口中斷程序的流程圖。

圖4 串口中斷程序的流程圖
本應用已經成功應用在24小時自動控制植物栽培室的控制系統,運行穩定,受到用戶的一致好評。這款觸摸屏和單片機的結合還可以應用其他智能家電以及智能儀器上面,跟傳統的工業觸摸屏和單片機結合相比,編程簡單,大大縮短產品開發周期,在價格上有明顯優勢,具有較好的性價比,應用前景廣闊。