<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 手機與無(wú)線(xiàn)通信 > 設計應用 > 具有上位機通信功能的數控分度頭

具有上位機通信功能的數控分度頭

作者: 時(shí)間:2012-08-07 來(lái)源:網(wǎng)絡(luò ) 收藏

 1 引言

本文引用地址:http://dyxdggzs.com/article/154191.htm

  分度頭是機械加工中的重要裝備,是銑床主要附件之一,應用十分廣泛。許多零件如齒輪、離合器、花鍵軸及刀具開(kāi)齒等在銑削時(shí)都需要利用分度頭進(jìn)行分度。常用的機械分度頭主要是通過(guò)計算然后通過(guò)人工手動(dòng)分度完成,分度速度慢,勞動(dòng)強度高;市面上的度頭準確可靠但是投資較大,而且購買(mǎi)的度頭體積大,無(wú)法和中小型銑床配合加工尺寸較小的零件。

  在項目實(shí)施過(guò)程中,需要在諸多圓盤(pán)上非等角度鉆孔 15 個(gè)。鑒于市售分度頭價(jià)位較高(5000-6000 元),筆者萌發(fā)了制造一臺簡(jiǎn)易、高精度度頭的想法。根據實(shí)際需求,我們設計了一種體積較小能夠同實(shí)驗室內現有銑床配合、的低成本數控分度頭。分度的計算工作由機來(lái)完成,分度速度快、精度高。機械加工、裝配都是在實(shí)驗室內完成,節約了大量成本。

  2 系統結構與機械精度

  系統結構如圖1 所示,單片機作為主控制器向步進(jìn)電機驅動(dòng)器發(fā)送脈沖、使能、方向三個(gè)信號來(lái)驅動(dòng)步進(jìn)電機工作。脈沖的個(gè)數以及頻率由機軟件完成計算,通過(guò)串行口發(fā)送給單片機,由單片機的一個(gè)定時(shí)器進(jìn)行輸出比較匹配,完成脈沖的發(fā)送,分度速度快。步進(jìn)電機通過(guò)機械減速器和同步帶驅動(dòng)卡盤(pán)實(shí)現精確分度。


圖 1 數控分度頭結構圖

  分度頭的誤差是由于在實(shí)際進(jìn)行分度的時(shí)候有可能所分的度數不能整除,出現小數,單片機只能處理整數的脈沖數,小數部分就要舍去,由此導致分度頭的精度誤差。最大的誤差值就相當于舍去了一個(gè)完整的脈沖δ=θ/i,式中δ表示單片機發(fā)送一個(gè)脈沖卡盤(pán)所轉過(guò)的角度,θ表示步進(jìn)電機的步進(jìn)角,i 表示機械傳動(dòng)裝置的減速比。系統采用的步進(jìn)電機步進(jìn)角是1.8°,經(jīng)過(guò)1000 細分驅動(dòng)器的驅動(dòng),實(shí)際的步進(jìn)角是0.36°,機械減速比是75:1,所以分度頭的最大誤差值是0.36°/ 75 = 0.0048°= 17.28″,比一般的手動(dòng)分度頭45″的精度要高出一倍以上。減小步進(jìn)電機的步進(jìn)角和增大機械減速比還可以進(jìn)一步提高系統的精度,但是這樣做會(huì )降低分度速度。在實(shí)際的應用中所選取的電機細分數和機械減速比已經(jīng)提供了足夠高的機械精度,能夠滿(mǎn)足實(shí)際加工需要。

  3 與上位機

  系統采用RS232 接口與上位機進(jìn)行。一般的USART 收發(fā)程序,往往是一段采用輪循方式完成數據收發(fā)的簡(jiǎn)單代碼。采用這種方式不僅大大降低了MCU 運行效率,而且也不適合于與其他的實(shí)際應用代碼相融合,無(wú)法實(shí)現結構化、模塊化的程序設計。根據AVR 單片機自身特點(diǎn)(片內含有高速大容量RAM),我們在片內RAM 中設置了一個(gè)接收緩沖區,采用一種底層驅動(dòng)+中間層函數的結構,把USART 接口部分相對地獨立出來(lái),更加方便系統軟件的編寫(xiě)。

  針對接收緩沖區的設計,我們采用一個(gè)類(lèi)似于環(huán)形隊列的結構,讀寫(xiě)緩沖區各用一個(gè)指針,再設一個(gè)計數器記錄緩沖區中未讀出的數據個(gè)數。主程序中每次讀取一個(gè)數據,讀指針指向下一個(gè)數據,計數器減1,每次發(fā)生接收中斷,寫(xiě)指針指向下一個(gè)數據,計數器加1。當主程序調用中間層函數接收數據時(shí),如果接收緩沖區為空,單片機不必等待,可以繼續執行其他操作。而USART 硬件接收完一個(gè)數據以后,中斷函數將接收到的數據存入接收緩沖區,當主程序中的其他操作結束后由中間層函數來(lái)讀取。

  控制命令由上位機發(fā)出,由五個(gè)字節組成一條完整的控制命令,格式如表 1 所示。


  D0:控制字的起始字節,規定每個(gè)控制字的起始字節都是固定值0x42,即ASCII 碼中的‘B’,用來(lái)代表開(kāi)始;

  D1:規定脈沖個(gè)數的高字節,在單片機中,我們用一個(gè)16 位的int 型變量存儲每一條控制命令的脈沖數,所以,上位機發(fā)過(guò)來(lái)的脈沖數就要被拆分成兩個(gè)字節;

  D2:規定脈沖個(gè)數的低字節;

  D3:這個(gè)字節的高四位中的第四位用來(lái)代表電機的轉動(dòng)方向(1 代表順時(shí)針,0 代表逆時(shí)針);低四位用來(lái)代表電機的轉動(dòng)速度,分為15 個(gè)等級;

  D4:控制字的結束字節,規定結束字節都是固定值0x45,即ASCII 中的‘E’,用來(lái)代表一條控制命令的結束。

  系統的上位機界面如圖2所示,在上位機界面中可以方便地設置旋轉角度、電機轉速、電機的轉動(dòng)方向,并按照使用意圖進(jìn)行運動(dòng)。實(shí)物圖如圖3所示。


上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: 數控分 功能 通信 上位 具有

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>