引 言
提花就是在織物的織造過程中對經線的升降加以控制,使其具有凹凸不平的立體感。隨著電子技術的發展,紡織提花技術由最初的機械選針方式發展到現在的電磁選針方式。電子提花與機械提花相比,結構較為簡單,花型控制更為靈活可靠。電子提花又有基于工控機和基于嵌入式單片機兩種方案,后者比前者在可靠性、成本等方面更具有優勢。
1、 電子提花機嵌入式控制系統硬件設計
設計方案中,本文采用了核心板+底板的方式。在不修改核心板電路圖的情況下,只要改變底板的功能單元,就可以方便得對系統的外圍接口進行擴展。有利于二次開發,核心板框和底板框圖如圖1、2所示。
核心板上集成Samsung S3C2410處理器,32M的SDRAM以及8M的Flash。
底板上提供了以下外設接口:一個15芯的和一個37芯的接口(用于實現對提花機進行各種控制),2個四線RS232串口,2個USB HOST接口,一個10M/100M自適應以太網接口,一個TFT LCD接口和一個觸摸屏接口。核心板和底板配合即構成一個最小的完整的應用系統。
由于S3C2410提供了117路復用的IO口線,本文利用了其中的28路口線對提花機實現了各種控制。見表1和表2。
2、 電子提花機系統軟件設計
電子提花機控制系統軟件主程序流程如圖3所示。
開機以后,控制程序開始運行;讀取初始化的配置文件,該文件記錄了工作的任務,磁鐵板的數量和過孔信息。根據工作任務文件,可以獲得花樣文件位置,將它讀入內存中,并設置織造重復次數的數據變量。如果該操作不成功,則要求手動輸入。
如果操作成功,就進入硬件檢查部分。硬件檢查將通過CheckIO( )函數,向磁鐵板上發送信息,并將信息讀回,以此判斷磁鐵板是否存在問題。
如果硬件檢查沒有問題,就開始進入控制送數的階段,該階段在SendData()中完成。
SendData( )函數是控制流程中最重要的一個函數,它控制著織造的整個過程。
在SendData( )中也可能因各種情況而退出,如硬件錯誤,送數錯誤,工作單任務完成需要重新調配或者直接退出程序等;在退出SendData( )后,需要判斷退出的原因,對以上幾種情況分別做出處理:如果硬件錯誤或送數出錯,則會等待清除錯誤以及按鍵處理;如果是工作單完成,則等待操作人員的指示,可能是重新添加新的任務,或者是重復原來的工作,也有可能是直接退出;在SendData( )內也有可能因操作人員要求直接退出。
3、 驅動程序
在嵌入式Linux中通過設計相應的設備驅動程序來完成對ARM的GPIO端口的訪問控制,進而實現對提花機的各種控制。
內核內部通過file結構識別設備,通過file_operations數據結構提供文件系統的入口點函數,也就是訪問設備驅動的函數。file_operations是定義在中的函數指針表。
以對磁鐵板發送串行數據為例,我們用S3C2410芯片GPB1引腳發送時鐘信號SCLK_O,GPB0引腳發送串行數據SDATA_O(見表1)。使用如下file_operations數據結構:
其中ioremap函數的作用是把GPB的控制寄存器和數據寄存器的物理地址映射成I/O內存,這樣我們就可以訪問I/O寄存器了。devfs_register( )函數的作用是向Linux內核注冊設備驅動程序。
有了驅動的支持,在應用程序中就可以直接對硬件設備(S3C2410的GPB0和GPB1引腳)進行訪問了。
4 、實驗結果及結論
圖4為示波器測得的B0、B1口的輸出。圖4的上方為B1,即SCLK_O;下方為B0,即SDATA_O。對SCLK_O信號,示波器每個所代表的時間是2 μs,所得的時鐘周期是7μs,滿足系統所需要的送數速度;程序發送的串行數據SDATA_O為非周期性,所以使得B1輸出的信號也呈非周期性。經現場調試,該系統能滿足對提花機的實時控制要求。
基于ARM的電子提花機控制系統與采用PC或工控機進行現場控制的系統方案相比,有著穩定性高、成本低的明顯優勢。
責任編輯:gt
-
處理器
+關注
關注
68文章
19460瀏覽量
231400 -
控制系統
+關注
關注
41文章
6671瀏覽量
110963 -
工控機
+關注
關注
10文章
1759瀏覽量
50871
發布評論請先 登錄
相關推薦
S3C2410處理器與Nand flash 的問題
基于ARM S3C2410處理器的PDA人機接口電路設計
S3C2410處理器 Bootloader(Vivi)源代碼
基于單片機的提花機控制系統設計
基于S3C2410的RTC模塊應用設計
![基于<b class='flag-5'>S3C2410</b>的RTC模塊應用設計](https://file1.elecfans.com//web2/M00/A4/B7/wKgZomUMNWaAEd-eAABGrZjSP6I817.gif)
Windows CE.NET在S3C2410處理器上的移植
![Windows CE.NET在<b class='flag-5'>S3C2410</b><b class='flag-5'>處理器</b>上的移植](https://file1.elecfans.com//web2/M00/A5/B0/wKgZomUMOZyARyjXAACo6YJ8Cpo724.jpg)
基于S3C2410處理器和IEEE802.11b實現無線溫度變送器的設計
![基于<b class='flag-5'>S3C2410</b><b class='flag-5'>處理器</b>和IEEE802.11b<b class='flag-5'>實現</b>無線溫度變送器的設計](https://file.elecfans.com/web1/M00/AB/DE/o4YBAF2_ckiAYZS9AAAXl9uVfcc277.gif)
基于S3C2410處理器對Windows CE 5.0操作系統實現BSP移植
![基于<b class='flag-5'>S3C2410</b><b class='flag-5'>處理器</b>對Windows CE 5.0操作<b class='flag-5'>系統</b><b class='flag-5'>實現</b>BSP移植](https://file.elecfans.com/web1/M00/B5/78/pIYBAF5hsqiAK3JbAAAfDnZkono240.png)
基于Linux操作系統和S3C2410微處理器實現GPS實時導航系統的設計
![基于Linux操作<b class='flag-5'>系統</b>和<b class='flag-5'>S3C2410</b>微<b class='flag-5'>處理器</b><b class='flag-5'>實現</b>GPS實時導航<b class='flag-5'>系統</b>的設計](https://file.elecfans.com/web1/M00/B5/A8/pIYBAF5lrceAV3tFAABZ--XIKqY194.png)
基于在S3C2410處理器平臺上實現Windows CE.NET的應用設計
![基于在<b class='flag-5'>S3C2410</b><b class='flag-5'>處理器</b>平臺上<b class='flag-5'>實現</b>Windows CE.NET的應用設計](https://file.elecfans.com/web1/M00/C7/DB/pIYBAF9r_Z2ANbP1AACCYidUXRo454.png)
基于S3C2410處理器實現USB網卡無線網絡功能的實現
![基于<b class='flag-5'>S3C2410</b><b class='flag-5'>處理器</b><b class='flag-5'>實現</b>USB網卡無線網絡功能的<b class='flag-5'>實現</b>](https://file.elecfans.com/web1/M00/ED/35/pIYBAGCH1uKATEiCAAAwbRKY2Es189.png)
評論