基于FPGA的智能運輸車系統(tǒng)設(shè)計
引 言
隨著經(jīng)濟的發(fā)展, 人們對生活質(zhì)量的要求越來越高2017 年 1 月和 2 月家用空調(diào)的銷量比去年同期增長了 39.5% 因此從空調(diào)組裝開始,建立有效的空調(diào)數(shù)據(jù)統(tǒng)計系統(tǒng)十分必要。針對當(dāng)前空調(diào)組件運輸車的普遍使用,以及傳統(tǒng)統(tǒng)計系統(tǒng)對運輸車相關(guān)數(shù)據(jù)采集不夠全面等問題,本文設(shè)計了一種可實時顯示運輸車車組位置信息、運輸車負(fù)載信息的系統(tǒng),實現(xiàn)了運輸車車組的有效調(diào)度以及單位時間內(nèi)最大效率的運輸,保證了運輸車工作的流暢性和安全性,同時也為空調(diào)的數(shù)據(jù)統(tǒng)計工作提供了可靠有效的參考標(biāo)準(zhǔn),提高了空調(diào)的整體生產(chǎn)效率
系統(tǒng)整體概述
本文主要基于 FPGA、電阻應(yīng)變式壓力傳感器、無線收發(fā)模塊等軟硬件設(shè)備,設(shè)計了一種能實現(xiàn)智能運輸車車組位置定位的系統(tǒng) [1,2]。地面操作人員可通過 PC 機了解各車組的位置分布,方便調(diào)度;系統(tǒng)采集并同步檢測某一車組中單輛運輸車所負(fù)載的相關(guān)空調(diào)組件重量信息并判斷其是否滿載,若未滿載則相應(yīng)的硬件報警電路會發(fā)出提示性報警聲,地面操作人員可從 PC 機上清楚看到未滿載運輸車的序列號,便于及時通知工作人員采取相應(yīng)的彌補措施,有效提升運輸車的運輸效率系統(tǒng)整體結(jié)構(gòu)如圖 1 所示
系統(tǒng)工作流程如下
將采集到的運輸車位置及負(fù)載的相應(yīng)信息傳送至中央處理模塊進行相應(yīng)的處理和判斷,處理后的信息構(gòu)成一個信息幀并傳給無線收發(fā)模塊
無線收發(fā)模塊自動為此信息生成相應(yīng)的前導(dǎo)碼和CRC校驗碼
最后,將處理后的信息傳給接收器,經(jīng)接收器處理后傳給 CAN總線 [3] 接口卡,最終顯示在上位機
本文系統(tǒng)中無線收發(fā)模塊選用挪威 Nordic 公司生產(chǎn)的單片射頻發(fā)射器芯片 nRF905 單片無線收發(fā)器 [2]
2 系統(tǒng)硬件設(shè)計
系統(tǒng)的硬件電路主要由信息采集模塊、中央處理模塊滿載檢測報警電路及無線收發(fā)模塊構(gòu)成。系統(tǒng)硬件結(jié)構(gòu)如圖 2 所示
2.1 負(fù)載信息采集模塊
負(fù)載信息采集模塊主要包括電阻應(yīng)變式壓力傳感器電路和 HX711AD模塊電路兩部分。電阻應(yīng)變式壓力傳感器電路如圖 3所示,當(dāng)力敏型彈性元件受力產(chǎn)生變形時,電橋電路產(chǎn)生相應(yīng)的應(yīng)變,并轉(zhuǎn)化成電阻變化。該力引起的電阻變化最終使測量電路的電壓發(fā)生變化,通過測量輸出電壓的數(shù)值傳給HX711AD模塊電路。HX711AD模塊電路如圖 4所示,該電路是一種可選擇差分輸入的兩路電路,工作電壓為 2.6~5.5V 上電可自動復(fù)位,并能簡化開機的初始化過程,具有集成度高響應(yīng)速度快、抗干擾能力強等特點,主要對輸出電壓進行采樣最高可達 128 倍信號增益,輸出電壓可放大 128 倍),輸出 24 bit A/D 轉(zhuǎn)換的值至 FPGA 進行相應(yīng)處理。根據(jù)電機車運輸參數(shù),為了保證采集數(shù)據(jù)的準(zhǔn)確性,本文系統(tǒng)中的車組重量按電機車的粘著重量計算
圖 3 電阻應(yīng)變式壓力傳感器電路
圖 5 無線收發(fā)模塊
2.2 中央處理模塊
考慮到空調(diào)組裝車間的生產(chǎn)環(huán)境,為保證系統(tǒng)正常工作該系統(tǒng)的核心部分采用Altera 公司生產(chǎn)的 Cyclone-II 系列的EP2C8Q208C8N 器件。該裝置采用 TSMC90 nm 低 K 絕緣材料工藝技術(shù),使用低絕緣體過程確保了器件的快速有效性和低成本。EP2C8Q208C8N 包含 8 256 個 LE(邏輯單元),提供 182 個可用的 I/O 引腳和 16 588 bit 嵌入式寄存器以及兩個鎖相環(huán)(PLL)。其具有數(shù)據(jù)速率最高可達 668 Mbps 的高速外部寄存器接口,支持可編程總線以及復(fù)雜的數(shù)字系統(tǒng),可實現(xiàn)數(shù)據(jù)信息的快速處理和可靠傳輸
運輸車負(fù)載信息傳送給中央處理模塊后,F(xiàn)PGA 芯片結(jié)合軟件編程判斷運輸車的負(fù)載是否達到預(yù)先設(shè)計的滿載標(biāo)準(zhǔn)若未滿載,則中央處理模塊控制滿載檢測報警電路發(fā)出未滿載報警聲,提示工作人員進行相應(yīng)處理
2.3 無線收發(fā)模塊
無線收發(fā)模塊如圖 5 所示。由于 nRF905 模塊的全部配置信息均要經(jīng)過 SPI 接口,因此,無線收發(fā)模塊首先接收經(jīng)中央處理模塊處理再由SPI 編程后的車組位置及負(fù)載信息nRF905 無線收發(fā)芯片的工作電壓為1.9 ~3.6 V,22 引腳QFN 封裝,本系統(tǒng)工作在 433 MHz ISM 頻段,具有多種低功率工作模式,可實現(xiàn)低能耗。此外,該芯片還具有可靠的無線數(shù)據(jù)傳輸特性,被應(yīng)用于工業(yè)數(shù)據(jù)采集、無線標(biāo)簽、身份識別以及數(shù)字音頻傳輸?shù)阮I(lǐng)域,能夠滿足多種無線通信場合的需要
3 系統(tǒng)軟件設(shè)計
利用 EDA技術(shù)中最常用的“自頂向下”的設(shè)計方法完成系統(tǒng)的軟件設(shè)計,該方法的優(yōu)點是具有完全獨立的芯片結(jié)構(gòu)可縮短開發(fā)周期。另外,此設(shè)計具有可重復(fù)利用性,有效提高了設(shè)計的適用范圍。本系統(tǒng)中頂層文件和底層文件的程序編寫均使用 VerilogHDL語言 [4],其中底層文件包含運輸車位置及負(fù)載信息處理程序,SPI接口程序 [5,6],無線接收和發(fā)送程序以及滿載判斷程序等
3.1 頂層文件設(shè)計
頂層文件程序主要負(fù)責(zé)調(diào)用底層文件及實現(xiàn)相應(yīng)功能充當(dāng)中央樞紐的角色,其流程如圖 6 所示。頂層文件首先調(diào)用采集信息處理子程序,對數(shù)據(jù)做相應(yīng)處理后,進入滿載判斷子程序,判斷單輛運輸車負(fù)載量是否達到滿載參考標(biāo)準(zhǔn)。若達到,則直接將數(shù)據(jù)信息發(fā)送至無線收發(fā)模塊 ;若未滿載則先驅(qū)動滿載報警電路報警,然后把數(shù)據(jù)信息傳給無線收發(fā)模塊,最后程序返回采集信息處理子程序,反復(fù)循環(huán)上述操作
3.2 SPI 接口程序設(shè)計
SPI(串行 periphearal接口)是同步串行外設(shè)接口,全雙工總線,由于其速度快及接口協(xié)議簡單,因此被廣泛應(yīng)用在A/D轉(zhuǎn)換、數(shù)字信號處理和數(shù)字信號解碼等領(lǐng)域。SPI接口由CS,SCLK,SDO和SDI四根信號線構(gòu)成。其中,CS為從設(shè)備使能信號 ;SCLK為串行時鐘信號;SDO,SDI分別為串行數(shù)據(jù)輸出和輸入。該接口主從工作方式,有一個主設(shè)備、一個或多個從設(shè)備。在本文系統(tǒng)的準(zhǔn)備階段,在配置模式下,SPI 接口為FPGA配置高頻頭的工作參數(shù);在接收 /發(fā)射模式下SPI接口接收和發(fā)送數(shù)據(jù)。SPI接口接收/發(fā)射模塊如圖7所示其中,SPI_in對應(yīng) SDI,同時也是 FPGA的輸出;SPI_out對應(yīng) SDO,為傳給無線收發(fā)模塊的數(shù)據(jù);sk 對應(yīng) SPI 接口中的SCLK ;clkin 為系統(tǒng)時鐘輸入信號;cs 對應(yīng)CS ;resetin 作為復(fù)位信號,且低電平有效
4 結(jié) 語
本文基于 FPGA 設(shè)計了智能運輸車系統(tǒng),有效實現(xiàn)了空調(diào)組件運輸車車組定位及負(fù)載信息的統(tǒng)計、顯示。針對復(fù)雜多變的車間環(huán)境檢測,中央處理模塊采用 Altera 公司集成度較高的 FPGA 芯片,在縮短系統(tǒng)開發(fā)周期的同時也使系統(tǒng)的穩(wěn)定性大大提高,有效保證了整個系統(tǒng)的正常運轉(zhuǎn)。本系統(tǒng)的出現(xiàn)有利于提高空調(diào)組裝的工作效率及運輸車的安全運輸,對整個空調(diào)生產(chǎn)量的準(zhǔn)確評估和訂單計劃的合理規(guī)劃都有積極的參考價值。此外,本系統(tǒng)便于安裝調(diào)試,操作簡單,易于維護和升級,具有較大的實用性