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

S3C2510A的SCARA機械臂控制系統設計*

2011-06-25 02:45:26王興川方建軍
單片機與嵌入式系統應用 2011年9期
關鍵詞:嵌入式設備系統

王興川,方建軍

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

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

引 言

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

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

1 系統硬件設計

1.1 總體設計方案

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

圖1 系統整體結構

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

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

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

圖2 S3C2510A與PCI插槽的連接圖

1.2 S3C2510A中PCI總線控制器

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

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

1.3 控制系統以及PCI總線控制器的啟動順序

系統上電后,系統PCI總線控制器的啟動順序如圖3所示。在對PCI總線控制器的特殊功能寄存器進行配置時要關閉中斷,即設置PCIINTEN=0。然后設置PCI控制和狀態寄存器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運動控制卡的驅動中程序完成的,因為已經把驅動程序加載到了μClinux的內核中,所以系統啟動之后操作系統會自動配置PCI外部設備。

2 系統軟件設計

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

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

圖3 系統PCI總線控制器的啟動順序

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

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

2.2 μClinux設備驅動程序的編寫

Linux的內核是由設備管理、進程管理、內存管理和文件系統組成,Linux設備驅動可以分為字符類設備、塊類設備、網絡接口類設備和其他非標準驅動。PCI設備被看作是字符型設備。

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

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

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

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

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

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

3 結 論

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

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

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

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

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

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

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

猜你喜歡
嵌入式設備系統
諧響應分析在設備減振中的應用
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
基于MPU6050簡單控制設備
電子制作(2018年11期)2018-08-04 03:26:08
搭建基于Qt的嵌入式開發平臺
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
嵌入式軟PLC在電鍍生產流程控制系統中的應用
電鍍與環保(2016年3期)2017-01-20 08:15:32
500kV輸變電設備運行維護探討
工業設計(2016年12期)2016-04-16 02:52:00
原來他們都是可穿戴設備
消費者報道(2014年7期)2014-07-31 11:23:57
主站蜘蛛池模板: 欧美在线网| 亚洲三级网站| 国产成人综合亚洲网址| 欧美成人a∨视频免费观看| 亚洲,国产,日韩,综合一区| 国产肉感大码AV无码| 999国产精品永久免费视频精品久久| 久草热视频在线| 91小视频在线观看免费版高清| 国产成人一区| 重口调教一区二区视频| 久久人搡人人玩人妻精品| 找国产毛片看| 国产亚洲欧美在线人成aaaa| 九九视频免费在线观看| 国语少妇高潮| 亚洲中文字幕在线观看| 国产成人夜色91| 亚洲无码精品在线播放| 国产美女叼嘿视频免费看| 在线免费亚洲无码视频| 黄色三级网站免费| 中文字幕首页系列人妻| 久无码久无码av无码| 亚洲国产成人久久77| 国产亚洲欧美日本一二三本道| 青草精品视频| 992tv国产人成在线观看| 国产丝袜啪啪| 欧美伦理一区| 亚洲香蕉伊综合在人在线| 91九色视频网| 亚洲天堂在线免费| 激情乱人伦| 成年人国产视频| 国产一级精品毛片基地| 三上悠亚一区二区| 日日拍夜夜操| 国产精品自在拍首页视频8 | 一级毛片免费不卡在线| 久久香蕉国产线| 日韩黄色在线| 亚洲欧美精品一中文字幕| 国产精品大白天新婚身材| 真实国产乱子伦高清| 亚洲天堂免费观看| 亚洲国产看片基地久久1024| 国产黄色视频综合| 五月婷婷导航| 欧美成人a∨视频免费观看| 亚洲中文精品人人永久免费| 啪啪免费视频一区二区| 亚洲精品第一页不卡| 国产精品三级专区| 19国产精品麻豆免费观看| 欧美激情福利| 成人小视频在线观看免费| 精品视频一区在线观看| 久久亚洲国产最新网站| 4虎影视国产在线观看精品| 日韩精品一区二区三区swag| 在线亚洲精品自拍| 色偷偷av男人的天堂不卡| 国产高清国内精品福利| 国产在线91在线电影| 国产精品19p| 久久精品国产在热久久2019| 在线观看欧美精品二区| 国产精品久久久久久久久| 精品国产99久久| 亚洲第一黄片大全| 白丝美女办公室高潮喷水视频| 色综合天天操| 91精品国产无线乱码在线| 91精品福利自产拍在线观看| 国产中文在线亚洲精品官网| 亚洲开心婷婷中文字幕| 免费又黄又爽又猛大片午夜| 亚洲第一天堂无码专区| 成年看免费观看视频拍拍| 一级做a爰片久久免费| 理论片一区|