標題: 光驅(qū)步進電機滑臺制作繪圖儀 [打印本頁]

作者: hzxyy    時間: 2018-4-21 14:17
標題: 光驅(qū)步進電機滑臺制作繪圖儀
        看了許多用廢棄光驅(qū)里面的步進電機滑臺制作激光雕刻機帖子,一直想自己做一個來的,就搜集了一下材料,改用圓珠筆芯和電磁鐵做個繪圖筆,參考激光雕刻機做個繪圖儀了。以下是制作過程的幾大步驟,算是個總結吧!
◆步進電機基本使用,電機極性識別,這個論壇里面找到的。簡單說來就是用電池接線,注意轉動方向,然后記錄下來此時電機接線的正負極。
◆電機驅(qū)動代碼,論壇里面有的。先能使正轉、反轉;然后再用獨立按鍵控制其正轉、反轉。注意不要越界,那個對滑塊部分有損害的。
◆行程控制
加入液晶顯示模塊部分代碼,以便顯示執(zhí)行了多少個拍子。
零點識別,也就是為了保證滑塊部分不會移動出界。
這個光驅(qū)架子很早前拆的也不記得當時的行程碰撞開關放哪里去了,后來就找個了 紅外對射模塊 裝上,用卡片擋光的方式來判斷是否到零點位。
再用獨立按鍵控制其轉動,到達最大行程時,記錄下液晶上顯示的最大數(shù)字,把這個數(shù)字寫到單片機程序代碼里,這樣就可以通過代碼來控制節(jié)拍總數(shù),從而保證滑塊不會超限。
◆拆了另一個光驅(qū)步進電機驅(qū)動,這個有限位開關,是銅彈簧片實現(xiàn)的。
也做了行程控制,這里發(fā)現(xiàn)了前面那個光驅(qū)架子質(zhì)量低哦。就是圖片里面那個架子上的,黑色塑料底盤的。
黑色光驅(qū)架子行程控制在31mm,節(jié)拍總數(shù)是282;后拆的那個光驅(qū)架子,鐵架子那個,行程在35mm,節(jié)拍總數(shù)控制在502。很明顯鐵架子的比黑色塑料的質(zhì)量好。
這里就出問題了,兩個“分辨率”不一致了。后期影響還挺大了。看看后面的圖就知道了。


◆機架
用后拆的那個光驅(qū)盒子做的底盤,找了別人家裝修剩余的木條,作為垂直支架,用M3螺絲塑料柱固定光驅(qū)滑塊等等。
壇里有的人用的塑料、電路板等做的架子,我用的還是木頭,好寒酸吶:(
不要螺絲擰死了,預留點活動空間,后期要反復多次調(diào)試,以便多次調(diào)整的。
找了個電磁鐵和圓珠筆芯,筆筒,還有廢舊的LED燈條的鋁板,做了繪圖筆的之間。此處需要多試幾次,保證筆芯盡可能垂直、電磁鐵的行程適當,保證筆尖剛好能夠接觸到底盤上的紙面上。


繪圖板,是用鐵片粘到滑臺上的,就是小學校門口賣的那些卡通鐵牌,也有磁貼。剪開了兩條磁貼,以便壓住紙片。這個都是小孩玩具里找出來的。
每次開機后,步進電機都轉動,滑臺移動到零點位。就是通過 紅外對射模塊 和 銅質(zhì)彈簧片 檢測到的。
改寫程序,在定時器中斷中調(diào)用步進電機的驅(qū)動代碼,先賦值后使能。


◆繪圖命令
前面行程測試了,就用節(jié)拍數(shù)代替將來設定的位圖像素數(shù)。即繪圖的位圖尺寸是寬282個像素、高502個像素。
繪制命令,其實就是抬筆、落筆了,在落筆的時候保持住,再移動滑塊,就相當于圓珠筆在劃線了。
這個就是控制電磁鐵了。單片機IO口一個控制繼電器,繼電器再連接電磁鐵的電源電路。我的電磁鐵使用的是7.2v直流電。
代碼部分還需要增加移位命令。如X移動到120像素點、Y移動到354像素點。定位到指定點后,落筆,然后再移動筆和底面滑臺。
八鄰域說明。位圖就是點陣圖了。
◆串口通信
基本通信模式,能接收、發(fā)送,參考教程里面的,稍微改動了一下。9600
繪制命令約定,例如Draw1203540122;120是X坐標值,354是Y坐標值,01是指在當前位置,X方向減一Y方向不變;22在當前位置X方向加一,Y方向加一,以此類推。
◆上位機程序   分位圖轉換程序和串口程序兩部分的。
        位圖轉換繪圖命令。約定,位圖只能是24位的,且只是黑白圖。
轉換成繪圖命令,這個有點啰嗦,簡單說,就是把所有像素掃描一遍,發(fā)現(xiàn)有黑色的像素就生成命令字符串DrawXXXYYY,XXXYYY就是坐標值把此像素改成紅色;然后以此像素為中心搜索其周圍的8個相鄰像素,如發(fā)現(xiàn)有黑色的,那么就在前面命令字符串后追加偏移量(我給XY偏移量都加上了一,這樣就不需要有負號了,參考前文示例。
單片機程序繪圖是再各自減一就能得到正確的偏移量了)。重復上述過程,這樣把生成的繪圖命令全部寫到文本文件中。一個位圖文件對應一個文本文件。
然后再用串口程序讀取此文本命令,每次讀取一行發(fā)送給單片機,單片機接收到后就返回長度,執(zhí)行完繪圖命令后發(fā)送Ok回來,串口程序收到Ok后再發(fā)送下一行繪圖命令給單片機。
如此反復,直至所有行都已經(jīng)發(fā)送完畢。約定每行繪圖命令字符串不超過252個字符。






圖上效果看,落筆定位誤差較大,圓珠筆筆尖抖動的較大,畫圖有點類似木版畫的效果。
估計是材料和做工粗糙,無法保證精度和準確度的。


作者: admin    時間: 2018-4-21 15:58
好棒的制作,能分享源碼嗎?
作者: luoping121    時間: 2018-4-23 08:40
頂一下,厲害了
作者: 雪山灰狐    時間: 2018-4-23 21:02
開發(fā)一個自動寫作業(yè)機,一定火
作者: qjzyx    時間: 2018-4-23 23:27
厲害了!能分享源碼嗎??
作者: hzxyy    時間: 2018-4-24 09:04
本想再整理一下發(fā)的,算了就這么發(fā)了。
位圖轉換程序還有缺陷,太簡單的圖沒有轉換文本的,奇怪!
串口程序,在連續(xù)打印了7,8幅圖像后就暫停了,要得再點擊一下按鈕,才繼續(xù)的,不知何故!
基本都是教程上的代碼照搬過來的,所以熟悉教程的話一定容易理解的。

17a光驅(qū)步進電機M1t2.rar

72.24 KB, 下載次數(shù): 133, 下載積分: 黑幣 -5

單片機程序

BitMap.zip

54.16 KB, 下載次數(shù): 102, 下載積分: 黑幣 -5

位圖轉繪圖命令


作者: hualalaxiayu    時間: 2018-4-24 11:56
謝謝,下載后認真學習
作者: 轉角遇到dogs    時間: 2018-6-6 21:01
樓主,你的串口程序軟件能發(fā)一下嗎?

作者: hzxyy    時間: 2018-6-7 10:16
轉角遇到dogs 發(fā)表于 2018-6-6 21:01
樓主,你的串口程序軟件能發(fā)一下嗎?

串口程序
這個是測試程序,有其他內(nèi)容的。
作為繪圖指令發(fā)送程序,其實就是逐行發(fā)送就可以了。
我的程序里面有其他內(nèi)容,實際只需要用到其中幾步。
步驟是:
指定串口;
指定文本文件;
點擊 逐行發(fā)送;
等待完成了。

串口發(fā)送程序.zip

24.71 KB, 下載次數(shù): 76, 下載積分: 黑幣 -5

串口發(fā)送程序


作者: abc496587489    時間: 2018-6-10 20:05
分享一下資料吧
作者: wis98    時間: 2018-7-21 11:10
分享一下資料好嗎
作者: qzyhlf    時間: 2019-1-25 11:53
頂一下,厲害了
作者: zxc753111    時間: 2019-3-1 15:57
樓主能給個聯(lián)系方式么
作者: 墨言007    時間: 2019-5-5 19:23
樓主能分享一下程序嗎?
作者: hzxyy    時間: 2019-5-9 16:31
下載吧,應該夠用的了
作者: wakaYG    時間: 2019-5-16 16:27
樓主好厲害
作者: 鉆研旋律    時間: 2019-5-23 00:48
頂起來,學習一下代碼
作者: hzxyy    時間: 2019-5-23 17:32
@ YJGG 應該是可以改成 電路板雕刻機 的,前提是機械部件得精確些;不過,我后來沒再做了
作者: ihoyrtsm    時間: 2019-5-24 13:41
下載學習
作者: huangrs    時間: 2019-6-13 22:28
hzxyy 發(fā)表于 2019-5-9 16:31
下載吧,應該夠用的了

試下行不行,謝謝
作者: ttaniscy    時間: 2019-9-5 10:50
高手,佩服佩服
作者: RamPaGe3    時間: 2019-11-7 16:24
樓主好厲害 學習了
作者: RamPaGe3    時間: 2019-11-7 16:54
hzxyy 發(fā)表于 2018-4-24 09:04
本想再整理一下發(fā)的,算了就這么發(fā)了。
位圖轉換程序還有缺陷,太簡單的圖沒有轉換文本的,奇怪!
串口程 ...

樓主  您好 你生成bitMap怎么生成的 能告訴原理嗎?
或者有相關帖子嗎?
作者: hzxyy    時間: 2019-11-9 15:59
RamPaGe3 發(fā)表于 2019-11-7 16:54
樓主  您好 你生成bitMap怎么生成的 能告訴原理嗎?
或者有相關帖子嗎?

這個你百度一下吧?位圖基礎知識了。
我是用系統(tǒng)自帶的畫圖軟件轉換的。
作者: wuxianbest    時間: 2020-4-21 22:53
樓主。請問你用的啥步進電機驅(qū)動?
我用A4988光驅(qū)步進電機容易發(fā)熱。你這個長時間工作,光驅(qū)步進電機發(fā)熱么?
作者: 葉恒義    時間: 2020-4-25 10:40
這個很好,是開發(fā)孩子智力的好工具。
作者: 米花卷    時間: 2020-4-29 01:12
這么復雜,完全沒看懂,還是用手吧
作者: hzxyy    時間: 2020-4-29 10:33
wuxianbest 發(fā)表于 2020-4-21 22:53
樓主。請問你用的啥步進電機驅(qū)動?
我用A4988光驅(qū)步進電機容易發(fā)熱。你這個長時間工作,光驅(qū)步進電機發(fā)熱 ...

具體什么型號,沒查過的;發(fā)熱是有的,似乎不嚴重,好久不用了
作者: 346712182    時間: 2020-7-14 18:56
我看被人都用3D打印的固定件 很簡潔,可以考慮改進下
作者: kunpengpeng    時間: 2020-7-31 17:47
高手,高手!
作者: wshong2005    時間: 2021-9-21 23:41
感謝高手




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1