六月婷婷综合-日韩理论在线-69久久久久-欧色图-蜜桃成人在线视频-色先锋在线-亚洲va中文字幕-香蕉影院在线-av一区免费-强开小嫩苞一区二区三区网站-国产视频九色蝌蚪

寧波市鄞州首南恒宇激光雕刻廠

面向數控設備的實Linux系統構建與應用
分享到:


隨著嵌入式系統的迅速發展和廣泛應用,嵌入式Linux以其強大的性能和開放性,越來越被開發人員所推崇。以CAI、IBM等公司和組織所建立的Embedded Linux Consortium(ELC)的成立更標志著嵌入式Linux已經走向標準化階段?,F在,各種基于Linux的嵌入式系統已被用于各行各業中?;谠创a完全開放的優勢和可以與商業操作系統相媲美的良好性能,人們對基于嵌入式實時Linux平臺的開放性的數控系統展開了很多的研究和探討。國際上一些組織和研究機構在利用嵌入式Linux方面構建中高檔數控方面已經取得了一些實質上的突破和進展[6]。

系統構建方法與策略

目前,作為世界上最大的開源項目,Linux技術取得了飛速的發展,在桌面應用、海量運算、消費類電子及工控產品等領域都有著廣泛的應用。由于具有非常重要的實際價值,微型Linux系統構建一直被當作嵌入式領域的一個研究熱點,也取得了一些研究成果,如基于軟盤的小型Linux系統(floppy disk Linux project)、自啟動U盤Linux項目(tiny Linux system with flash card)等等[1]。

基于實際系統開發的需要,在借鑒國際上一些優秀的開源項目的基礎上,本文作者給出了一整套構建專用實時數控系統平臺(Real time numerical control system platform -RCNCP)的方案和策略。

構建該實時數控系統平臺的兩個主要目標分別是:為達到驗證應用程序接口的目的,研發一整套能實現所有數控模塊功能的軟件;建立一個媒介平臺,在此基礎上進行二次開發,可以方便的實現對機床、機器人、坐標測量機等自動化設備的實時控制[2]。

基于RCNCP作為一個控制系統軟件平臺特性,筆者著重從是實時內核裁減與構建、Linux系統整合等兩個方面。

實時內核裁減與構建

考慮到源代碼的開放性及實時LINUX系統的迅速發展,筆者采用了REALTIME-LINUX作為 RCNCP控制系統的底層平臺。具體適用版本Rtlinux-3.1和Linux核心2.4.16。

具體實現步驟如下:

獲得需要的源代碼文件:

Linux-2.4.16.tar.gz Linux核心
Rtlinux-3.1.tar.gz Rtlinux源代碼
patch_rtl-2.4.16、patch_rtlinux-3.1 補丁文件
解壓縮源代碼并給打補丁
tar-zxvf /tmp/rtlinux-3.1.tar.gz
tar zxvf /tmp/linux-2.4.16.tar.gz
patch p1patch p1
編譯Linux系統核心

make menuconfig(或者make xconfig),在相應出現的選擇界面上選中rtlinux所需的特性。如Disable APM feature、Disable SMP feature、Enable RTC at the character device section (實時時鐘)

Enable Frame-buffer support。然后執行編譯操作
make dep、make bzImage、make modules、make modules_install。

最后得到一個可啟動的系統核心bzImage。

編譯Rtlinux系統核心

用剛才得到的系統核心重新引導系統,進入Rtlinux-3.1目錄下, 執行以下操作:

make config、make、make devices、make install
最后輸入rtlinux start腳本文件,就會在屏幕上看到相應的rtlinux 啟動信息。

Linux系統整合

一個穩定的實時內核是整個系統工作的重要基礎。但是僅僅有內核系統是不能工作的,必須配以完整的啟動引導程序、文件系統、人機界面等支持。

考慮到實際工程需要,筆者采用Compact Flash card作為媒介來存儲Linux系統和應用程序,采用GRUB為系統引導程序,采用有“瑞士軍刀”美譽的BusyBox提供文件系統支持。

具體實現步驟如下:

系統分區及格式化

首先筆者需要一個Compact-Flash Card Reader來連接CF卡和宿主計算機,市場上一般提供USB接口的讀卡器。

首先,通過讀卡器將CF卡插入USB接口,使用下面的命令對其進行分區和格式化:

fdisk/dev/sda

其中/dev/sda設備指用戶的優盤。如果用戶的機器中還有其它的SCSI設備,那么可能是/dev/sdb等。用戶使用“fdisk”刪除原來的所有分區,并將所有的空間都分成一個Linux基本分區。接下來用戶要將其格式化為Ext2文件系統,可以使用以下命令:

mkfs.ext2/dev/sda1

通過上述命令我們就得到一個完整Linux分區存儲盤。

引導程序GRUB的編譯與安裝

可以采用從源代碼方式安裝,也可以采由宿主機上直接利用GRUB命令來給CF卡上安裝引導程序,為方便起見,采用了后者。

首先,要將格式化好的優盤上的文件系統掛載到當前的Linux系統中。命令如下:

mount/dev/sda1/usb

接著,要建立GRUB所需要的目錄,并將當前使用的Linux系統中的GRUB相關文件(/boot/grub/目錄下的stage1和stage2)復制到CF卡的/usb/boot/grub下。命令如下:
mkdir/usb; mkdir/usb/boot; mkdir/usb/boot/;
cp/boot/grub/stage* /usb/boot/grub;

然后,使用“grub”命令將GRUB引導程序安裝在優盤上。

具體可以參考如下:

grub>root(hd2,0)
Filesystem type is ext2fs, partition type 0x83
grub>setup (hd2)
Checking if“/boot/grub/stage1” exists... yes
Checking if“/boot/grub/stage2”exists... yes
Checking if“/boot/grub/e2fs_stage1_5”exists... no
Install /boot/grub/stage1(hd2)/boot/grub/stage2/boot/grub/grub.conf... succeeded Done.
grub>quit

這樣就成功的把GRUB引導程序安裝到CF卡上了,CF卡也成為可獨立啟動的媒介了。

文件系統建立

作為對嵌入式Linux系統支持的一個重要部分,筆者采用BusyBox來這一小巧工具來完成這一功能。其實現方法也很簡單:

tar-zxf busybox-0.60.5.tar.gz;
cd busybox-0.60.5;make;make install
然后把BusyBox安裝到Compact Flash:上
cp-r install/*/mnt/flash;
安裝完成之后,就可以使用BusyBox提供系統支持了。

具體應用

考慮到數控設備行業系統軟件應用特點,基于分布式控制的思想,在已經構建的實時Linux系統基礎上,采用組件化設計方法,整個控制系統軟件按其功能分類可以劃分為四個部分GUI(Graphical User Interfaces)人機界面、動作控制器Motion Controller(MOT)、輸入輸出控制器Discrete I/O Controller(IO)和任務指派器Task Executor(TASK),其系統工作流程圖如圖1所示。

聯系我們

地址: 浙江省.寧波市鄞州區寧姜公路(九曲小區二期旁)

郵編: 315040

聯系人: 盛立峰

電話: 0574-87139378

傳真: 0574-87139378

手機: 13867861670

郵箱: 85400329@qq.com

聯系我們
主站蜘蛛池模板: 临猗县| 上犹县| 丰宁| 会昌县| 钦州市| 北碚区| 毕节市| 安西县| 平远县| 基隆市| 昌黎县| 仪陇县| 荆州市| 黎平县| 彝良县| 阿荣旗| 晋城| 宜都市| 大田县| 忻城县| 阳高县| 台南市| 古浪县| 砀山县| 太仆寺旗| 杨浦区| 舞钢市| 南阳市| 怀远县| 胶州市| 中超| 得荣县| 玉环县| 民乐县| 微山县| 江门市| 射阳县| 福州市| 富裕县| 哈巴河县| 宜州市|