999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

S3C2510A的SCARA機械臂控制系統(tǒng)設計*

2011-06-25 02:45:26王興川方建軍
關鍵詞:嵌入式設備系統(tǒng)

王興川,方建軍

(1.北方工業(yè)大學機電工程學院,北京 100144;2.北京聯(lián)合大學)

王興川(碩士研究生),研究方向為嵌入式系統(tǒng)應用;方建軍(教授),主要研究方向為機器視覺、智能機器人技術以及嵌入式系統(tǒng)應用。

引 言

目前,機械臂的控制系統(tǒng)普遍采用“PC/工控機+運動控制卡”的開發(fā)模式,但其體積較大、功耗高、攜帶不方便等不足之處成為其進一步發(fā)展的障礙。隨著嵌入式技術的日益發(fā)展,ARM處理器的性能不斷提高,因此可以考慮用ARM處理器來代替PC/工控機作為控制系統(tǒng),使得系統(tǒng)具有體積小、重量輕、功耗低、便于攜帶的特點,同時將嵌入式操作系統(tǒng)Linux或者VxWorks移植到控制系統(tǒng)中,使其滿足對實時性的要求。

PCI總線作為一種先進的高性能32/64位局部總線,非常適合于顯示卡、網(wǎng)卡、多串口卡等高速外設。PCI總線具備32位的數(shù)據(jù)總線,時鐘頻率可達66 MHz,傳輸速率最高可達264 MBps,能夠滿足高速數(shù)據(jù)傳輸?shù)男枰4蠖鄶?shù)數(shù)據(jù)處理模塊、通信處理模塊都具有PCI接口。本文采用Samsung公司基于ARM940T內(nèi)核的處理器S3C2510A和帶有PCI接口的運動控制卡的嵌入式架構,實現(xiàn)了深圳固高公司SCARA機械臂的控制系統(tǒng)。該方案省去了用的PCI接口芯片(如 PLX9054),降低了電路設計難度。

1 系統(tǒng)硬件設計

1.1 總體設計方案

系統(tǒng)整體結(jié)構如圖1所示。控制系統(tǒng)可以劃分為:以S3C2510A為核心的主控系統(tǒng)和帶有PCI接口的運動控制卡。主控芯片S3C2510A具有4 KB的I-Cache和 4 KB的D-Cache,其最高運行頻率可達166 MHz。主控系統(tǒng)直接采用芯片內(nèi)置的SDARM控制器、PCI控制器和10M/100M以太網(wǎng)控制器等。系統(tǒng)的外部時鐘源為10 MHz,設置芯片引腳 CLKMODO 、CLKMODI、CPU_FREQ1、BUS_FREQ0為高電平,設置引腳 CPU_FREQ0、CPU_FREQ2 、BUS_FREQ1、BUS_FREQ2為低電平 ,然后經(jīng)過S3C2510A的4個內(nèi)置倍頻器使系統(tǒng)內(nèi)核的工作頻率為133 MHz,PCI設備運行頻率為66 MHz。

圖1 系統(tǒng)整體結(jié)構

主控系統(tǒng)由主控芯片、存儲系統(tǒng)和調(diào)試接口3部分組成。存儲系統(tǒng)由2片 16 MB、16位的 SDRAM 芯片K4S281632E和1片16 MB的Flash S29GL128M 組成,除此之外,還包括1個高速UART、1個JTAG硬件調(diào)試接口和1個10M/100M的以太網(wǎng)接口。

S3C2510A內(nèi)部集成的PCI總線控制器與PCI總線規(guī)范2.2版本相符合,具有32位地址/數(shù)據(jù)復用總線,支持非線性傳輸和突發(fā)傳輸,最高數(shù)據(jù)傳輸速率可達264 MBps/66 MHz或者132 Mbps/33 MHz。該處理器的引腳定義是根據(jù)PCI總線來命名的,因此只需將S3C2510A的PCI控制引腳引出,將引腳 IDSEL與PCIAD12連接作為初始化設備選擇信號。圖2是S3C2510A與 PCI插槽的連接圖。

系統(tǒng)通電后,PCI插槽上的運動控制卡等待主控系統(tǒng)信號的輸入;得到控制系統(tǒng)的控制信號后,運動控制卡便可控制SCARA機械臂的運動。控制系統(tǒng)調(diào)試可以通過UART串口來完成,通過系統(tǒng)上的網(wǎng)口可以實現(xiàn)控制系統(tǒng)的遠程控制。

圖2 S3C2510A與PCI插槽的連接圖

1.2 S3C2510A中PCI總線控制器

S3C2510A處理器內(nèi)部集成了PCI/MINI-PCI和 PC Card控制器。根據(jù)該系統(tǒng)的需要,應將PCI控制器設置在PCI Host的工作模式,通過設置 S3C2510A的 PCI_PCCDM和PCI_HOSTM兩個引腳來實現(xiàn)。S3C2510A中PCI總線控制器的工作模式如表1所列。

表1 S3C2510A中PCI總線控制器的工作模式

1.3 控制系統(tǒng)以及PCI總線控制器的啟動順序

系統(tǒng)上電后,系統(tǒng)PCI總線控制器的啟動順序如圖3所示。在對PCI總線控制器的特殊功能寄存器進行配置時要關閉中斷,即設置PCIINTEN=0。然后設置PCI控制和狀態(tài)寄存器PCICON[ARB,ATS,SPL,IOP,MMP],在一些情況下還要設置PCI診斷寄存器。接著設置與基地址有關的寄存器PCIBAM0~1和PCIBATPA0~2,為了防止重啟信號和時鐘信號沖突,還要配置有關PCI重啟和時鐘寄存器PCIRCC[MSK]=0。

在PCI總線控制器偵測帶有PCI接口的運動控制卡并初始化外圍設備的寄存器時,需要完成以下工作:首先,讀取所有的配置寄存器值,包括PCIHID、PCIHSC、PCIHSSID等;然后檢查BAR(Backup Address Register)的范圍,并一一分配空間;最后使能外部設備并激活總線。這些配置都是在PCI運動控制卡的驅(qū)動中程序完成的,因為已經(jīng)把驅(qū)動程序加載到了μClinux的內(nèi)核中,所以系統(tǒng)啟動之后操作系統(tǒng)會自動配置PCI外部設備。

2 系統(tǒng)軟件設計

系統(tǒng)軟件主要由Bootloader和嵌入式μClinux兩大部分組成。在嵌入式系統(tǒng)中,通常并沒有像BIOS那樣的固件程序,整個系統(tǒng)的加載啟動任務完全由Bootloader來完成。簡單地說,Bootloader就是在操作系統(tǒng)內(nèi)核運行之前運行的一小段程序。通過這段程序,可以初始化硬件設備、建立內(nèi)存空間的映射圖,從而將軟件的軟、硬件環(huán)境設置到一個合適的狀態(tài),以便為最終調(diào)用操作系統(tǒng)內(nèi)核準備好正確的環(huán)境。本系統(tǒng)采用通用的 U-boot。嵌入式μClinux是這個系統(tǒng)的操作系統(tǒng),主要包括設備驅(qū)動程序和上層應用程序。這里主要介紹一下 U-boot的移植方法和uClinux中PCI設備驅(qū)動程序的實現(xiàn)。

2.1 Bootloader的移植

Bootloader的具體移植步驟如下:

①下載并解壓U-boot,修改主目錄下的Makefile,改變交叉編譯的路徑,即 CROSS_COMPILE=/home/lvlang/arm2510a/crosstoll/gcc-4.1.1-glibc-2.3.2/arm9tdmi-linuxgnu/bin/arm-9tdmi-linux-gnu-。

②在/board子目錄中建立自己的硬件系統(tǒng)目錄,在include/configs/中建立配置頭文件,把支持S3C2510A的配置頭文件s3c2510x.h改成系統(tǒng)的名字lvlang2510A.h,并測試編譯能否成功,即Make lvlang2510A_config。若出現(xiàn)Configuring for lvlang board...,則說明U-boot的第一步移植成功。

圖3 系統(tǒng)PCI總線控制器的啟動順序

③根據(jù)硬件系統(tǒng)的具體情況進行源碼修改,包括相關寄存器、Flash和 SDRAM 的相關配置,根據(jù)RUBRDIV0=((int)(MCLK/16./(gd->baudrate)+0.5)-1)來修改串口的波特率。

④將start.s中鏡像的入口點設置為0x0地址,然后編譯U-boot生成 U-boot鏡像文件,通過JTAG下載到Flash中并重啟系統(tǒng),即可通過串口在超級終端中看到啟動信息了,至此移植U-boot成功。

2.2 μClinux設備驅(qū)動程序的編寫

Linux的內(nèi)核是由設備管理、進程管理、內(nèi)存管理和文件系統(tǒng)組成,Linux設備驅(qū)動可以分為字符類設備、塊類設備、網(wǎng)絡接口類設備和其他非標準驅(qū)動。PCI設備被看作是字符型設備。

每個PCI外設都由1個總線號、1個設備號和1個功能號來標識,共有3個訪問空間,即內(nèi)存空間、I/O端口和配置寄存器。PCI配置空間由256個字節(jié)組成,且每個設備功能都有一個配置空間,用于決定PCI器件的工作方式和映射到系統(tǒng)中的地址。相關函數(shù)如下:

下面介紹在μClinux中添加帶有PCI運動控制卡驅(qū)動的步驟。

①創(chuàng)建一個PCI設備,命令為mknod pci_dev c 245 0。其中,c表示字符設備,245表示主設備號,0代表次設備號。

②初始化外部設備,將函數(shù)pci_dev_init()添加到uClinux/linux/drivers/char/mem.c文件的chr_dev_init()中,chr_dev_init()將在系統(tǒng)啟動時被調(diào)用,會完成設備驅(qū)動的初始化工作。

③編寫設備驅(qū)動文件pci_dev.c。設備注冊接口函數(shù)和中斷處理函數(shù)等構成了PCI設備驅(qū)動主要代碼,即file_operations中的函數(shù)。設備驅(qū)動與內(nèi)核關系緊密,在編寫過程中需要注意庫函數(shù)的使用和I/O空間分配。在嵌入式系統(tǒng)編程過程中無法使用LibC提供的標準庫。要根據(jù)S3C2510A的PCI配置寄存器所給定的基址來讀寫數(shù)據(jù)。因為PCI定義的I/O空間是32位地址空間,因此內(nèi)存和I/O可以使用相同的配置接口。

④加載PCI設備。因為μClinux不支持設備驅(qū)動的動態(tài)加載,因此需要把驅(qū)動編譯到μClinux內(nèi)核中。首先需修改makefile文件,添加obj_$(CONFIG_PCI_DEV)+=pci_dev.o;接著修改 config.in,添加 bool′pci_dev install′CONFIG_PCI_DEV,以便在配置目標板Linux系統(tǒng)內(nèi)核時對這個設備進行選擇;最后在目標系統(tǒng)的makefile中添加設備節(jié)點pci_dev,c,245,0。這樣在配置Linux內(nèi)核時就可以選擇pci_dev install,然后進行編譯,這樣PCI設備驅(qū)動就加載到了μClinux系統(tǒng)中。

3 結(jié) 論

使用本文設計的控制系統(tǒng)以及帶有PCI接口的運動控制卡和液晶屏組成的系統(tǒng),即可實現(xiàn)對SCARA機械臂的運動控制,可以代替?zhèn)鹘y(tǒng)的以PC機或工控機作為控制系統(tǒng)的控制方式,在不失實時性的要求下對SCARA機械臂進行準確的控制。本設計創(chuàng)新之處是:系統(tǒng)采用嵌入式μClinux操作系統(tǒng)和32位帶有PCI接口的嵌入式處理器,在不影響系統(tǒng)性能的同時降低了電路的設計難度,減小了系統(tǒng)的體積、功耗。該系統(tǒng)除了用于帶有PCI接口的運動控制卡外,還可以用于其他任何帶有PCI接口的設備,具有較強的通用性。

[1]符意德,陸陽.嵌入式系統(tǒng)原理及接口技術[M].北京:清華大學出版社,2007.

[2]尹勇,李宇.PCI總線設備開發(fā)寶典[M].北京:北京航空航天大學出版社,2005.

[3]Samsung Electronics.S3C2510A 32bit RISC Microprocessor User's Manual,2003-03.

[4]李俊.嵌入式設備驅(qū)動開發(fā)詳解[M].北京:人民郵電出版社,2008.

[5]孫天澤,袁文菊.嵌入式設計及Linux驅(qū)動開發(fā)指南——基于ARM9處理器[M].北京:電子工業(yè)出版社,2007.

[6]Jonathan Corbet,Alessandro Rubini,Greg Kroah-Hartman.Linux設備驅(qū)動程序[M].魏永明,耿岳,鐘書毅,譯.3版.北京:中國電力出版社,2010:300-322.

猜你喜歡
嵌入式設備系統(tǒng)
諧響應分析在設備減振中的應用
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無人機系統(tǒng)
ZC系列無人機遙感系統(tǒng)
北京測繪(2020年12期)2020-12-29 01:33:58
基于MPU6050簡單控制設備
電子制作(2018年11期)2018-08-04 03:26:08
搭建基于Qt的嵌入式開發(fā)平臺
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
嵌入式軟PLC在電鍍生產(chǎn)流程控制系統(tǒng)中的應用
500kV輸變電設備運行維護探討
原來他們都是可穿戴設備
消費者報道(2014年7期)2014-07-31 11:23:57
主站蜘蛛池模板: 青青草国产在线视频| 免费看美女毛片| 日韩激情成人| 亚洲人成网址| 免费在线播放毛片| 免费在线看黄网址| 日韩成人在线一区二区| 欧美成人综合视频| 狂欢视频在线观看不卡| 97人妻精品专区久久久久| 婷婷激情五月网| 日韩无码视频播放| 中文字幕调教一区二区视频| 亚洲av综合网| 亚洲中文字幕久久精品无码一区| 久久天天躁狠狠躁夜夜2020一| 亚洲国产精品无码久久一线| 免费三A级毛片视频| 熟妇丰满人妻av无码区| 久久国产乱子| 美女被操黄色视频网站| 少妇精品在线| 色视频国产| 精品91在线| 就去色综合| 国产精品亚洲αv天堂无码| 东京热av无码电影一区二区| 日本三级精品| 91在线精品免费免费播放| 久久semm亚洲国产| 久久免费视频6| 色老二精品视频在线观看| 久草国产在线观看| 中国一级特黄大片在线观看| 欧美日韩中文国产| 久久久久久久蜜桃| 日本成人福利视频| 露脸国产精品自产在线播| 久久77777| 国产精品成| 乱色熟女综合一区二区| 多人乱p欧美在线观看| 国产精品无码在线看| 日韩无码黄色网站| 在线视频精品一区| 波多野结衣一级毛片| 国产成人亚洲精品色欲AV| 欧美成人h精品网站| 在线免费看片a| 国产成人av一区二区三区| 中文字幕免费在线视频| 综合网久久| 欧美国产日韩在线观看| 亚洲精品777| 国产精品女主播| 九九九精品成人免费视频7| 18禁黄无遮挡免费动漫网站| 欧美国产在线看| 亚洲精品日产精品乱码不卡| 在线观看91精品国产剧情免费| 中日无码在线观看| 精品91在线| 性欧美在线| 男女男免费视频网站国产| 高清不卡一区二区三区香蕉| 九九香蕉视频| a级毛片一区二区免费视频| 四虎影视永久在线精品| 国内丰满少妇猛烈精品播| 成人无码一区二区三区视频在线观看| 尤物国产在线| 久久不卡国产精品无码| 刘亦菲一区二区在线观看| 国产在线拍偷自揄观看视频网站| 欧美激情首页| 午夜天堂视频| 精品剧情v国产在线观看| 国内精品久久久久鸭| 久久99蜜桃精品久久久久小说| 久久男人视频| 中文字幕无码中文字幕有码在线| 先锋资源久久|