<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 對(duì)經(jīng)濟(jì)型數(shù)控機(jī)床實(shí)行USB接口改造的實(shí)踐探索

          對(duì)經(jīng)濟(jì)型數(shù)控機(jī)床實(shí)行USB接口改造的實(shí)踐探索

          作者: 時(shí)間:2013-11-02 來源:網(wǎng)絡(luò) 收藏
          /RS232轉(zhuǎn)換器一般由接口模塊、UART接口模塊、數(shù)據(jù)緩沖區(qū)和協(xié)議控制單元組成。接口模塊主要提供與USB總線的連接,它實(shí)現(xiàn)一般USB設(shè)備的所有功能,與PC上的USB口相連;UART接口則實(shí)現(xiàn)標(biāo)準(zhǔn)RS232接口的所有功能,與DNC接口板的RS232接口相連;協(xié)議控制單元通過接受USB接口的命令,對(duì)UART接口進(jìn)行配置(配置通信波特率、數(shù)據(jù)位、校驗(yàn)位、起始/停止位、流控信號(hào)等)。數(shù)據(jù)緩沖區(qū)用來臨時(shí)保存雙方的數(shù)據(jù)傳輸工程中的數(shù)據(jù)。

          另一種改造方法是直接改造DNC接口板,增加USB模塊。圖4是改造后的硬件結(jié)構(gòu)。


          圖4 改造后的DNC接口板結(jié)構(gòu)其中,SIE是串行接口引擎,是USB接口的核心模塊。如果CPU包含了USB接口,則CPU直接與負(fù)責(zé)實(shí)現(xiàn)USB協(xié)議要求主要功能的SIE核心模塊連接,否則,CPU則需通過串行總線,如I2C或數(shù)據(jù)地址線I/O口與SIE相連。

          兩種硬件改造在USB接口實(shí)現(xiàn)上有本質(zhì)的區(qū)別:前者USB/RS232轉(zhuǎn)換器所用的USB芯片屬于USB接口芯片,從硬件結(jié)構(gòu)上來說僅包含USB的串行接口引擎(SIE)、FIFO內(nèi)存、收發(fā)器以及電壓調(diào)整器等芯片;后者則屬于內(nèi)含USB單元的微處理器(MPU),即芯片包含了增強(qiáng)版的8051核心,可以通過I/O與原有CPU相連,甚至可以直接去驅(qū)動(dòng)步進(jìn)電機(jī),完成數(shù)控任務(wù)。

          3. 軟件設(shè)計(jì)

          (1)USB/RS232

          這種結(jié)構(gòu)可以直接使用,不需要另外編制驅(qū)動(dòng)程序。

          (2)對(duì)直接改造DNC接口板的,要采用EZ-USB的固件開發(fā)

          可以使用Cypress USB仿真器軟件——Cypress Lab中的Keil C Complier工具。該應(yīng)用程序是由Cypress半導(dǎo)體公司為配合USB芯片組的開發(fā)所研制出來的。通過編制相應(yīng)程序,可將編譯后的文件直接燒錄至EEPROM中,從而完成USB的固件設(shè)計(jì)。也可以采用CYASM匯編語言,這是一種只有38個(gè)精簡(jiǎn)指令的編譯器程序,同樣將編譯好的16進(jìn)制格式文件(.hex)燒錄至EEPROM中使用。其主要功能是控制EZ-USB芯片接受并處理USB驅(qū)動(dòng)程序的請(qǐng)求(請(qǐng)求設(shè)備描述符、請(qǐng)求或設(shè)置設(shè)備狀態(tài)、請(qǐng)求設(shè)備設(shè)置、請(qǐng)求或設(shè)置設(shè)備接口等共11種USBl.1標(biāo)準(zhǔn)請(qǐng)求);控制EZ-USB芯片接受應(yīng)用程序的控制指令;控制A/D模塊的數(shù)據(jù)采集;通過EZ-USB存儲(chǔ)數(shù)據(jù)并實(shí)時(shí)上傳PC機(jī)。

          (3)在Windows系統(tǒng)下編制USB驅(qū)動(dòng)程序

          USB總線是支持熱插拔的,當(dāng)Windows檢測(cè)到一個(gè)新的USB外設(shè)時(shí),必須做的一件事情是找出應(yīng)該使用哪個(gè)設(shè)備驅(qū)動(dòng)應(yīng)用軟件來與設(shè)備通信,然后再載入選定的驅(qū)動(dòng)。這是Windows設(shè)備管理器的工作,設(shè)備管理器使用類、設(shè)備安裝器和INF文件來找到這個(gè)匹配。當(dāng)Windows列舉新的USB設(shè)備時(shí),設(shè)備管理器把所有INF文件中的數(shù)據(jù)(設(shè)備供應(yīng)商和產(chǎn)品的ID,也稱作VID和HD,以及制造商、供應(yīng)商名字和描述符等)與在列舉時(shí)從設(shè)備獲得的描述符中的信息做比較。找到匹配之后,Windows系統(tǒng)注冊(cè)表將保存所有已安裝設(shè)備的信息。在位置HKEY_L0CAL_ MACHINEEnum USB處,將列出所有的USB設(shè)備。

          由于在Windows 98中提供了USBD(USB系統(tǒng)驅(qū)動(dòng)程序),且USBD又給用戶提供了直接支持的USB DI,用戶在編寫USB驅(qū)動(dòng)程序時(shí),只需配置滿足USB要求的URB(USB請(qǐng)求塊),并通過USB DI發(fā)送下去,即可實(shí)現(xiàn)對(duì)USB設(shè)備的控制。設(shè)備驅(qū)動(dòng)是保證應(yīng)用程序訪問硬件設(shè)備的軟件組件,一個(gè)設(shè)備驅(qū)動(dòng)使得應(yīng)用程序不必知道物理連接、信號(hào)和與一個(gè)設(shè)備通信需要的協(xié)議等的細(xì)節(jié)。應(yīng)用程序可以使用一套操作系統(tǒng)支持的函數(shù)與設(shè)備驅(qū)動(dòng)進(jìn)行通信。用于讀寫USB設(shè)備的API函數(shù)是Creat Ne、Device Io Control或Read File和Write File。

          把所有與設(shè)備有關(guān)的驅(qū)動(dòng)操作編譯為DLL,提供給應(yīng)用程序使用。應(yīng)用程序無需知道操作設(shè)備的細(xì)節(jié),只需知道DLL的接口函數(shù)即可。下面給出對(duì)USB設(shè)備基本操作函數(shù)的例子。

          CreateFile(TEXT("\\.\Ez-USB"),GENERIC_READ,FILE_SHARE_ READ|FIlE_SHARE_WRITE,NULL,OPEN_EXISTING, FILE_FLAG_OVERLAPPED,NULL)

          第1個(gè)參數(shù)是需打開的設(shè)備名;第2和第3個(gè)參數(shù)分別為授權(quán)讀寫和共享模式;第4個(gè)參數(shù)為安全屬性,一般為NULL;第5個(gè)參數(shù)為打開方式(對(duì)USB設(shè)備來說應(yīng)該是打開已存在的);第6個(gè)參數(shù)是異步交替模式;第7個(gè)參數(shù)為模板文件,這里并不需要。函數(shù)返回值為設(shè)備指針。

          Device Io Control(hUSB, (DWORD)wFuncNum, (PVOID)pParam, (DWORD) dwSize,NULL,0,Returned,NULL)

          hUSB為通過CreatFile所獲得的設(shè)備指針;wFunHum為設(shè)備操作代碼,具體可查閱CYPRESS公司或USBD提供的標(biāo)準(zhǔn)代碼;pParam為執(zhí)行操作的請(qǐng)求數(shù)據(jù)緩沖區(qū)指針;dwSize為數(shù)據(jù)緩沖區(qū)大小,緊跟其后的兩個(gè)參數(shù)分別為操作的輸出數(shù)據(jù)接收緩沖區(qū)指針和大小,一般為NULL和0即可;Returned為操作返回指針;最后一個(gè)參數(shù)為異步操作,為NULL即可。

          使用前先定義好請(qǐng)求數(shù)據(jù)緩沖區(qū),獲得設(shè)備指針后即可用相應(yīng)的操作代碼對(duì)USB設(shè)備進(jìn)行操作了。

          以上的設(shè)備驅(qū)動(dòng)程序和上層應(yīng)用軟件已在VC6.0下調(diào)試通過。

          四、總結(jié)

          通過上述的軟硬件改造,使經(jīng)濟(jì)型數(shù)控與PC之間具備了一個(gè)新的接口——USB接口。這種改造有助于提高經(jīng)濟(jì)數(shù)控系統(tǒng)與PC相配置的靈活性和多樣性,甚至我們可以用1臺(tái)PC來控制一條小型流水線上的所有NC。這不僅大大減少了安裝、配置時(shí)間,降低了故障率,減少了操作工人數(shù)量,更可以與相關(guān)軟件配合,實(shí)現(xiàn)并行制造,使NC的利用率達(dá)到最大,并使經(jīng)濟(jì)型數(shù)控系統(tǒng)擴(kuò)展了網(wǎng)絡(luò)功能,可以通過PC連入Internet/Intranet,實(shí)現(xiàn)網(wǎng)絡(luò)化制造。


          上一頁 1 2 3 下一頁

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();