浙江大學軟件學院 趙 斌 付建雙 葉 威 趙棟棟
目前,我國的精加工產業發展比較落后,資金無法跟上,關鍵技術嚴重依賴國外公 司。八音盒音片的精加工技術,涉及到音頻信號采集、噪聲濾除、電解加工等技術,是多領域系統化的工程,尤其是工廠復雜環境下的音頻信號采集方式、抗電磁干擾技術、信號差分傳輸機制、噪聲抑制機制以及電路板抗干擾機制。
為此,采用STM32為處理器,運用已有的電磁效應采集技術,可以實現面向工廠復雜環境的音頻采集系統。音頻采集系統采用音頻信號轉換、FFT算法、抗干擾設計等技術,從而為電解精加工產業提供高效、可靠、智能的算法和設備,提高電解精加工生產的效率,增強電解精加工的穩定性,從而為八音盒機芯加工系統提供一套完整的音頻信號采集方案。
音片精加工系統以stm32為處理器控制步進電機轉動來對八音盒機芯音片的18根音鍵進行依次撥動,讓其切割磁力線,產生感應電流來進行采樣。處理器對采集的數據進行FFT運算,濾除環境噪聲,可以得到音頻信號的頻率。然后將音頻頻率通過Modbus協議發送到PLC中。PLC將收到的頻率輸出到觸摸屏顯示,并與用戶預先輸入的標準頻率進行比較,計算出音頻差值得出電解脈沖數,進而控制電解系統進行加工,使音片的振動頻率與標準頻率相同(如圖1所示)。
(1)STM32核心板
根據用戶現有的音鍵撥動系統采集音頻,并進行快速頻率分析,得出基頻頻率,與標頻對比,得出差頻,進而控制電解系統進行加工。
(2)電解板
其工作原理是通過放電,加快電解液與目標音片的反應速度。通過控制放電時間,可以控制音片的腐蝕速度,從而調整音片的頻率。
(3)PLC
通過改變PLC寄存器的內容可以控制音頻測試、電解系統工作及模式步進電機
(4)機械平臺
負責對音片的取料,放料。
(5)觸摸屏
根據需要輸入標準的音頻頻率,顯示采集到的實際頻率。
八音盒音片有18根音鍵且排列緊密,因此對于每一個音片的加工,需要把18根音鍵分成3組,每組六根。音鍵分組時,中間隔2根分為1組,即1、4、7、10、13、16根為一組,2、5、8、11、14、17根為一組,3、6、9、12、15、18根為一組,以方便電機拔齒拔到音鍵產生振動。
系統正常工作時,電機轉動會撥動音鍵。電機轉動一圈可測出一組6根音鍵頻率并進行相應電解,該過程作為一個工作周期,每一組音鍵至多需要四個工作周期完成加工。如果中間發現已經電解到合格片要求范圍,系統會跳過后面幾個工作周期。對一組音鍵加工完成后,PLC會控制平臺移動到下一個位置,使得撥片能夠撥到下一組對應的音鍵,對下一組音鍵進行加工。
整個系統分為正常工作模式、連續測試模式、電解模式等。系統上電后,處理器從PLC讀取工作參數并完成初始化,然后讀取工作模式。以正常工作模式為例,處理器獲取工作模式后,即開始進行第一組的采頻和電解。采頻完成后,在電解的同時,處理器會把采頻的結果發送給PLC,而PLC把結果發到觸摸屏上進行顯示。對三組音鍵加工完后,處理器會把音片是否合格的結果發送回PLC,PLC控制平臺把不合格片分揀出來,再手動進行加工。
系統的實現如圖2所示。
系統硬件的設計主要包括以下幾個模塊:傳感器信號的放大和過濾模塊、AD采樣模塊、數據處理模塊、步進電機控制模塊和通信模塊。整個系統的體系結構是一個典型的集中控制結構,硬件連接圖如圖3所示。
根據總體系統設計圖,分別設計各個模塊的硬件電路,主要包括放大電路的設計、濾波電路的設計、AD采樣電路的設計、LCD顯示電路的設計和步進電機控制電路的設計。
在微電子方面,一般傳感器采集到的信號都是十分微弱的,不足以達到AD采樣電路所能識別的電平,所以必須對傳感器采集到的信號進行放大處理。此外,還要進行濾波處理,濾除掉信號中的噪聲,保留有用的信號,但是這個電路必須放在放大電路之后,原因有兩點:
①濾波電路對微弱信號的濾波效果不好,這樣就會導致無法濾除噪音;
②如果信號剛開始就先進入濾波電路可能會導致把有用信號濾除掉,導致后面的放大電路無法起作用,使得AD采樣電路無法采樣到信號。這里的放大電路采用的是兩級反相放大器電路,通過兩級的放大電路,可以使得信號低噪聲放大到所需要的電平,運算放大器采用通用的LM324芯片,這是個通用運算放大器,內部集成4個功放管。放大電路圖如圖4所示。
濾波器是一種選頻裝置,可以使信號中特定的頻率成分通過,而極大地衰減其它頻率成分。根據濾波器的選頻作用分類,濾波器可以分為:低通濾波器、高通濾波器、帶通濾波器、帶阻濾波器。根據最佳逼近特性分類,可以分為:巴斯沃特濾波器、切比雪夫濾波器、貝塞爾濾波器。本設計采用八階的巴斯沃特低通濾波器,因為有效的頻率范圍在200Hz~5000Hz之間,所以設置其截至頻率為5kHz,采用filter軟件,濾波器的特性圖,具體如圖5所示。
根據圖5所得出來的電路原理圖,如圖6所示。
系統數據處理的核心是STM32F103ZET微控制器,它采用ARMv7內核,cortex-m3系列處理器。
軟件設計的主要目標是實現音片頻率的測定和電解控制。音片頻率的測定是通過控制電機轉動撥動音鍵并采集傳感器電壓,然后進行快速傅里葉變換計算、去除干擾和頻率計算來完成的。電解控制在軟件部分的實現相對簡單,只需按照實際采集到的頻率與標準頻率之差計算出電解脈沖數,然后通過定時器發送給電解板。
系統在運行的過程中需要通過Modbus協議不斷與PLC通信,獲取工作方式,并傳遞頻率信息。
下面以全工作模式(其它的工作模式是全工作模式的一部分,用于機器的調試或手動控制)為例介紹該系統的工作流程:由于每個分組有6根音鍵,所以系統在讀到工作模式為全工作模式后,先轉動6次,期間每次轉完都進行FFT計算,最后把頻率計算出來,如圖7所示。
軟件體系的具體實現包括Modbus協議、FFT算法、去干擾算法和脈沖控制,下面進行詳細說明。
Modbus是由Modicon在1979年發明的,全球第一個用于工業現場的總線協議。Modbus協議是應用于電子控制器設備上的一種通信協議。通過此協議,控制器之間或經由網絡與其它設備之間可以通信。Modbus協議已經成為一種通用的工業標準。
本系統采用的是ASCII編碼模式,該模式將一個信息中的每8位字節作為2個ASCII字符傳輸,這種模式的主要優點是允許字符之間的時間間隔長達1S,而且不會出現錯誤。
在ASCII編碼模式中,以“:”表示信息開始,以換行表示信息結束。信息幀結構如表1所示。
例如:系統讀取工作參數的時候,會向PLC發送讀取寄存器幀,功能碼為01,數據包格式如圖8。
對應代碼如下:



表1 ASCII編碼模式信息幀結構

圖1 總體結構概述

圖2 音片加工系統實際圖

圖3 硬件連接流程圖

圖4 放大電路圖原理圖

圖5 濾波器的特性圖

圖6 濾波器的原理圖

圖7

圖8

然后把pucFrame交給發送函數,并在定時器的控制下按字節發送數據。發送數據的過程可以與程序的主控制過程異步進行,不過由于初始化部分必須先結束才能進行正常工作,所以此處用軟定時器延時等待PLC發送的結果,代碼如下:


FFT(Fast Fourier Transformation),即快速傅里葉變換,是離散傅里葉變換的快速算法,它是根據離散傅里葉變換的奇、偶、虛、實等特性,對離散傅里葉變換的算法進行改進獲得的。
為了提高效率,FFT算法采集匯編語言實現,最終可以在250ms時間內完成對1024個點的FFT計算,并達到4Hz的精度要求。
實際開發過程中,發現干擾分為兩種:一種是固定某一頻率的干擾,一種是先拔的一根由于振蕩比較久對后面的一根產生的干擾。
由于每個分組有6根音鍵,而且這6根音鍵的頻率呈遞減趨勢,所以對于第一種干擾,可以通過分析每一組音鍵中前兩根和后兩根中每根音鍵出現的一個頻率,去計算其它5根中前后12Hz以內有沒有出現過相同的頻率,如果出現的次數大于3(不包括基準的這一根)就認為有一個固定的外界干擾。
對于第二種干擾,只需要把先拔的一根中出現的頻率在后拔的那根里面去掉即可。
對步進電機和電解的控制是通過定時器實現的,其中步進電機的轉動可用Systick(即系統心跳)來控制,即每次進入中斷時把一個計數器加1,并根據奇偶性控制引腳輸出高低電平從而形成穩定的矩形波。電解控制是由一個單獨的定時器實現的,在主流程中只需開啟或關閉定時器即可。
在面向工廠的復雜工作環境下,音頻采集首先需要解決各種噪聲的干擾問題,該系統在硬件以及軟件方面都進行了相關處理,最終可以實現音頻信號的精確采集。對音片的電解精加工也達到了工廠規定,簡化了人工挑選加工音片的工作流程,大大提高了工廠工作效率。該系統對音頻信號的處理方式也可用于其他對音頻信號采集要求較高的系統中,從而得到更廣泛的應用。
[1]J.W.Cooley,J.W.Tukey,An algorithm for the machine computation of complex Fourier series.Mathematics of Computation,1965,19(4):297-301.
[2]XILINX.Fast Fourier Transform.v3.2.XILINX product spec ifi cation,august,2005.
[3]U.M.Baese.數字信號處理的FPGA實現[M].北京:清華大學出版社,2003.178-215.
[4]Brian W.Kernighan,Dennis M.Ritchie,The C Programming Language.Prentice hall,1989.
[5]ST Microelectronics STM32F10xx 6 8 B Datasheet(EN).2008.
[6]Joseph Yiu,ARM Cortex-M3權威指南[M].北京:北京航空航天大學出版社,2009.