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

基于LINUX+RTLINUX平臺的開放式數(shù)控系統(tǒng)的設(shè)計(jì)*

2012-11-24 04:41:54姜凌羽
關(guān)鍵詞:設(shè)備

潘 策,姜凌羽

(1.大連高金數(shù)控技術(shù)有限公司,遼寧 大連 116001;2.北京航空航天大學(xué) 機(jī)械工程及自動化學(xué)院,北京 100083)

0 引言

開放式的數(shù)控系統(tǒng)是隨著計(jì)算機(jī)數(shù)控系統(tǒng)(CNC)的飛速發(fā)展而逐漸成為現(xiàn)代機(jī)床控制領(lǐng)域的新方向,其體系結(jié)構(gòu)的標(biāo)準(zhǔn)化、柔性化、功能模塊化以及超強(qiáng)的可擴(kuò)展性和移植性,特別是它能夠通過現(xiàn)場總線將單個設(shè)備連接,實(shí)現(xiàn)控制的網(wǎng)絡(luò)化和集成化,這是傳統(tǒng)的體系結(jié)構(gòu)所無法比擬的。在軟件應(yīng)用平臺開發(fā)上也具有更加寬廣的空間,能滿足不同用戶對其二次開發(fā)的不同需求。

在開放式數(shù)控系統(tǒng)中主要有兩大功能模塊:運(yùn)動控制模塊和伺服控制模塊。運(yùn)動控制模塊主要實(shí)現(xiàn)位置環(huán)的控制;伺服控制模塊主要實(shí)現(xiàn)速度環(huán)和電流環(huán)的控制。運(yùn)動控制模塊通過特定的控制算法將機(jī)床位置參數(shù)轉(zhuǎn)化成速度指令,傳遞給伺服控制模塊,后者將傳來的速度指令和速度反饋值比較,其偏差作為速度控制器收入,其輸出為轉(zhuǎn)矩給定,并和電流環(huán)的反饋值比較,經(jīng)轉(zhuǎn)矩/電流變換后得到轉(zhuǎn)矩電流給定,從而完成一次完整的三環(huán)閉環(huán)控制。電流環(huán)是內(nèi)環(huán),速度環(huán)是中間環(huán),位置環(huán)是外環(huán)。機(jī)床電機(jī)得到是電流輸出值,而實(shí)現(xiàn)的是機(jī)床的位置控制,因此運(yùn)動控制模塊決定了開放式數(shù)控系統(tǒng)的精度。

1 開放式數(shù)控系統(tǒng)的構(gòu)成

IEEE關(guān)于開放式系統(tǒng)的定義是:開放式系統(tǒng)能有效地運(yùn)行于不同的平臺之上,可以與其他應(yīng)用系統(tǒng)相互操作,并提供與用戶交互的統(tǒng)一風(fēng)格,即所謂互操作性、可移植性、可伸縮性和可互換性[1]。

開放式數(shù)控系統(tǒng)平臺由硬件和軟件組成。系統(tǒng)軟件包括實(shí)時操作系統(tǒng)、通訊系統(tǒng)、設(shè)備驅(qū)動程序以及其它應(yīng)用程序。系統(tǒng)軟件通過標(biāo)準(zhǔn)的應(yīng)用程序接口向應(yīng)用軟件提供服務(wù)。系統(tǒng)硬件包括組成系統(tǒng)的各種物理實(shí)體。

1.1 CUnet現(xiàn)場網(wǎng)絡(luò)

Cunet網(wǎng)(Corective Uncontiunse Network)為無主從式、數(shù)據(jù)共享型現(xiàn)場總線網(wǎng)。特點(diǎn)是:把連接I/O設(shè)備的所有功能集成在一塊邊長16mm的正方形IC芯片中,可省去使用者許多復(fù)雜的事先設(shè)置工作;僅用2條線,連接所有的I/O局,有極高的可維護(hù)性;IC芯片內(nèi)帶高性能糾錯功能,具有極好的耐環(huán)境性;采用數(shù)據(jù)共享式通訊網(wǎng)絡(luò)組織方式,整個網(wǎng)絡(luò)溶為一體;不僅僅傳送I/O數(shù)據(jù),更可傳送網(wǎng)絡(luò)通訊局自身的有關(guān)信息。一個CUnet網(wǎng)絡(luò)中最多可連接64臺I/O設(shè)備。64臺I/O設(shè)備共享所有的I/O信息[2]。

MKY40是為Cunet總線網(wǎng)絡(luò)而配置的集成芯片,將各個站點(diǎn)通過MKY40相連接,可以形成分布式處理系統(tǒng)網(wǎng)絡(luò),從而增強(qiáng)整個網(wǎng)絡(luò)的存儲和處理能力[2]。

Cunet有兩種工作模式:內(nèi)存模

式和I/O模式。兩種模式之間可以通過硬件設(shè)置相互轉(zhuǎn)換。處于內(nèi)存模式的MKY40有兩個接口:總線接口(BUS-I/F)和網(wǎng)絡(luò)接口(Network I/F),將BUSI/F和用戶端CPU連接,同時將Network I/F和網(wǎng)絡(luò)連接,可以在Cunet總線網(wǎng)絡(luò)創(chuàng)建一個內(nèi)存基站[2]。

1.2 MCX314多軸電機(jī)伺服控制器[3]

MCX314是日本NOVA電子公司研制的DSP運(yùn)動控制專用芯片,能實(shí)現(xiàn)4軸3聯(lián)運(yùn)動的位置、速度、加速度控制和直線、圓弧、位元3種模式的連續(xù)插補(bǔ)位置環(huán)閉環(huán)控制,其性能優(yōu)良、接口簡單編程方便,廣泛應(yīng)用于數(shù)控機(jī)床和機(jī)器人控制領(lǐng)域。

2 開放式數(shù)控系統(tǒng)的硬件設(shè)計(jì)

本文采用的是通用PC加實(shí)時控制單元的雙內(nèi)核控制結(jié)構(gòu)。利用PC機(jī)的Linux形成完善的人機(jī)界面,同時用軟件來實(shí)現(xiàn)各種先進(jìn)的控制技術(shù);開放式結(jié)構(gòu)平臺可以集成不同開發(fā)商提供的軟件并適合聯(lián)網(wǎng)需要,且具有與硬件無關(guān)的特性。如圖1所示。

圖1 基于PCI總線的運(yùn)動控制原理圖

PCI9052是連接PCI總線和MCX314的橋接口電路芯片,從PC機(jī)中發(fā)來的加工參數(shù)、插補(bǔ)軌跡以及狀態(tài)信息通過PCI總線傳到PCI9052的高速緩存FIFO中,PCI9052作為總線主設(shè)備將PC機(jī)傳來的信息經(jīng)過緩存最終存儲到MKY40內(nèi),由于MKY40映射為PC機(jī)的一部分內(nèi)存地址所以PC機(jī)就像操作內(nèi)存一樣將信息存儲到MKY40,等待MCX314的讀取。MCX314定時從MKY40中讀取PC機(jī)傳來的各種控制信息。MCX314的主要功能是根據(jù)PC機(jī)送來的插補(bǔ)信息通過插補(bǔ)算。如圖2所示。

圖2 PCI9052與PCI總線和MCX314的接口電路

3 開放式數(shù)控系統(tǒng)的軟件設(shè)計(jì)

在Linux下,驅(qū)動程序處于“核心態(tài)”,所有的硬件設(shè)備都被映射為文件,對外提供統(tǒng)一的標(biāo)準(zhǔn)的軟件調(diào)用接口。上層軟件通過fopen(),fread(),fwrite()等,透明地在用戶層對硬件實(shí)現(xiàn)控制[4]。

驅(qū)動程序的主要工作是:監(jiān)控板卡狀態(tài),控制板卡的熱插拔和熱交換;提供應(yīng)用程序訪問接口;從RAM中取出指令數(shù)據(jù);根據(jù)應(yīng)用程序的讀寫請求,將數(shù)據(jù)提供給應(yīng)用程序。

PCI設(shè)備的驅(qū)動程序主要解決的首先是即插即用問題,如何獲取系統(tǒng)分配給該設(shè)備的配置資源,然后是如何訪問設(shè)備I/O內(nèi)存映射硬件,如果處理硬件中斷,最后還要解決和應(yīng)用程序的通訊問題。

圖3 基于PCI總線的運(yùn)動控制原理圖

3.1 驅(qū)動程序的編寫

3.1.1 設(shè)備驅(qū)動程序的結(jié)構(gòu)

Linux的設(shè)備驅(qū)動程序大致可以分為如下幾個部分:

驅(qū)動程序的注冊與注銷、設(shè)備的打開與釋放、設(shè)備的讀寫操作、設(shè)備的控制操作、設(shè)備的中斷和輪詢處理。

驅(qū)動程序的注冊與注銷:通過在驅(qū)動程序的初始化過程中調(diào)用register_chrdev()或者register_blkdev()來完成。而在關(guān)閉字符設(shè)備或者塊設(shè)備時,則需要通過調(diào)unregister_chrdev()或unregister_blkdev()從內(nèi)核中注銷設(shè)備,同時釋放占用的主設(shè)備號。

設(shè)備的打開與釋放通過調(diào)用file_operations結(jié)構(gòu)中的函數(shù)open()和release()來完成的。

設(shè)備的讀寫操作:直接使用函數(shù)read()和write()就可以了。

設(shè)備的控制操作:通過設(shè)備驅(qū)動程序中的函數(shù)ioctl()來完成。

設(shè)備的中斷和輪詢處理:對于不支持中斷的硬件設(shè)備,讀寫時需要輪流查詢設(shè)備狀態(tài),以便決定是否繼續(xù)進(jìn)行數(shù)據(jù)傳輸。如果設(shè)備支持中斷,則可以按中斷方式進(jìn)行操作。

3.1.2 設(shè)備驅(qū)動程序的接口

Linux中的I/O子系統(tǒng)向內(nèi)核中的其他部分提供了一個統(tǒng)一的標(biāo)準(zhǔn)設(shè)備接口,這是通過include/linux/fs.h中的數(shù)據(jù)結(jié)構(gòu)file_operations來完成。當(dāng)應(yīng)用程序?qū)υO(shè)備文件進(jìn)行諸如open、close、read、write等操作時,Linux內(nèi)核將通過file_operations結(jié)構(gòu)訪問驅(qū)動程序提供的函數(shù)。例如,當(dāng)應(yīng)用程序?qū)υO(shè)備文件執(zhí)行讀操作時,內(nèi)核將調(diào)用file_operations結(jié)構(gòu)中的read函數(shù)。

3.1.3 設(shè)備驅(qū)動程序的動態(tài)加載

從本質(zhì)上來講,模塊也是內(nèi)核的一部分,它不同于普通的應(yīng)用程序,不能調(diào)用位于用戶態(tài)下的C或者C++庫函數(shù),而只能調(diào)用Linux內(nèi)核提供的函數(shù),在/proc/ksyms中可以查看到內(nèi)核提供的所有函數(shù)。

在以模塊方式編寫驅(qū)動程序時,要實(shí)現(xiàn)兩個必不可少的函數(shù)init_module()和cleanup_module(),而且至少要包含<linux/krernel.h>和<linux/module.h>兩個頭文件。在用gcc編譯內(nèi)核模塊時,需要加上-DMODULE-D_KERNEL_-DLINUX這幾個參數(shù),編譯生成的模塊(一般為.o文件)可以使用命令insmod載入Linux內(nèi)核,從而成為內(nèi)核的一個組成部分,此時內(nèi)核會調(diào)用模塊中的函數(shù)init_module()。當(dāng)不需要該模塊時,可以使用rmmod命令進(jìn)行卸載,此進(jìn)內(nèi)核會調(diào)用模塊中的函數(shù)cleanup_module()。任何時候都可以使用命令來lsmod查看目前已經(jīng)加載的模塊以及正在使用該模塊的用戶數(shù)。

3.2 應(yīng)用程序的編寫

上層應(yīng)用程序模塊主要包括:人機(jī)接口模塊、解釋程序模塊、PLC接口模塊、插補(bǔ)模塊 、運(yùn)動算法模塊五大部分,通過將輸入指令逐步分解、傳達(dá)至運(yùn)動控制器,實(shí)現(xiàn)對機(jī)床的準(zhǔn)確控制,由于軟件采用了模塊化,同時基于組件技術(shù),所以進(jìn)行軟件升級以及用戶進(jìn)行二次開發(fā)都比較方便[4]

4 結(jié)束語

基于LINUX+RTLINUX雙內(nèi)核開發(fā)平臺和PCI總線的開放式數(shù)控系統(tǒng),具有實(shí)時性高、成本低,可移植性和可擴(kuò)展性好,易于二次開發(fā)等優(yōu)點(diǎn),能夠滿足數(shù)控車床、銑床、車銑中心、車削中心,立式和臥式加工中心等高精度機(jī)床的應(yīng)用。

[1]于東,郭銳鋒.開放式數(shù)控系統(tǒng)域建模研究[J].小型微型計(jì)算機(jī)統(tǒng),2000.

[2]Technical report No.006> CUnet Family> MKY40,Method of selecting the crystal oscillator for MKY40,2006.

[3]葉佩青,汪勁松.MCX314運(yùn)動控制芯片與數(shù)控系統(tǒng)設(shè)計(jì)[M].北京:北京航空航天大學(xué)出版社,2002.

[4]馬毅,李霞峰,盛煥華.基于Linux的實(shí)時操作系統(tǒng)設(shè)計(jì)[J]. 計(jì)算機(jī)工程與應(yīng)用,2001(12):109-110,176.

[5]馮俊平.基于MPC8250的嵌入式Linux系統(tǒng)開發(fā)[D].西安電子科技大學(xué),2006.

[6]張俊鵬.PCI通信板卡及Linux驅(qū)動設(shè)計(jì)與實(shí)現(xiàn)[D].大連:大連理工大學(xué),2007.

[7]趙昌永,等.一種基于嵌入式Linux的視頻采集系統(tǒng)儀器儀表學(xué)報(bào),2005.

[8]DVB-S機(jī)頂盒前端驅(qū)動的軟件實(shí)現(xiàn).天津大學(xué),2006.

猜你喜歡
設(shè)備
諧響應(yīng)分析在設(shè)備減振中的應(yīng)用
調(diào)試新設(shè)備
基于VB6.0+Access2010開發(fā)的設(shè)備管理信息系統(tǒng)
基于MPU6050簡單控制設(shè)備
電子制作(2018年11期)2018-08-04 03:26:08
廣播發(fā)射設(shè)備中平衡輸入與不平衡輸入的轉(zhuǎn)換
電子制作(2018年10期)2018-08-04 03:24:48
食之無味,棄之可惜 那些槽點(diǎn)滿滿的可穿戴智能設(shè)備
500kV輸變電設(shè)備運(yùn)行維護(hù)探討
HTC斥資千萬美元入股虛擬現(xiàn)實(shí)設(shè)備商WEVR
IT時代周刊(2015年8期)2015-11-11 05:50:37
Automechanika Shanghai 2014 之“看” 汽保設(shè)備篇
如何在設(shè)備采購中節(jié)省成本
主站蜘蛛池模板: 成人午夜天| 国产成人综合欧美精品久久| 亚洲另类第一页| 麻豆国产精品一二三在线观看| 免费看美女毛片| 精品国产成人a在线观看| 国产精品一区二区无码免费看片| 精品国产www| 精品国产网站| 免费在线视频a| 国产一区二区人大臿蕉香蕉| 91精品啪在线观看国产91九色| 99青青青精品视频在线| 一级毛片免费观看不卡视频| 91精品国产一区| 一级成人欧美一区在线观看| 波多野结衣久久精品| 午夜精品国产自在| 免费又黄又爽又猛大片午夜| 亚洲成人福利网站| 黄色网在线| 真实国产精品vr专区| 国产欧美综合在线观看第七页| 大学生久久香蕉国产线观看| 一本久道热中字伊人| 亚洲精品无码不卡在线播放| 成年免费在线观看| 免费国产无遮挡又黄又爽| 国产成人乱无码视频| 欧美一级高清片欧美国产欧美| 国产欧美又粗又猛又爽老| 国产亚洲精品自在线| 91www在线观看| 国产欧美日韩在线在线不卡视频| 午夜啪啪福利| 国产精品第一区在线观看| 少妇极品熟妇人妻专区视频| 国产精品欧美日本韩免费一区二区三区不卡 | 亚洲人成影院午夜网站| 欧美高清视频一区二区三区| 亚洲V日韩V无码一区二区| 久一在线视频| 久久国产精品国产自线拍| 激情六月丁香婷婷| 久草视频精品| 亚洲午夜福利在线| 国产av剧情无码精品色午夜| 欧美国产中文| v天堂中文在线| 伊人久久大线影院首页| 日韩精品一区二区三区视频免费看| 国产精品手机视频| 波多野结衣一区二区三区四区视频 | 免费三A级毛片视频| 久久香蕉国产线看观| 亚洲香蕉在线| 精品久久蜜桃| 亚洲精品天堂自在久久77| 亚洲精品你懂的| 欧美黄网在线| 秘书高跟黑色丝袜国产91在线 | 九色视频线上播放| 国产在线麻豆波多野结衣| 国产精品一区二区不卡的视频| 亚洲免费毛片| 亚洲AⅤ波多系列中文字幕| 亚洲午夜福利精品无码| 免费毛片视频| 国产一级二级在线观看| 国产精品福利导航| 国产成人精品午夜视频'| 欧美精品影院| 夜夜操国产| 国产高清在线观看91精品| 亚洲综合色婷婷中文字幕| 一级毛片中文字幕| 夜色爽爽影院18禁妓女影院| www.亚洲国产| 亚洲无码精品在线播放 | 91九色国产porny| 国产在线视频自拍| 日韩黄色在线|