jrcsh 发表于 2010-3-21 02:42:15

MCU和机械都会点~在折腾一个完全自主开发的CNC(PCB雕刻专用)走另类路线特跑来学习

先放上一些 进度吧 本来打算要是 6月底 出水的看来是没戏了

目前进度在策划机体结构上先用次品材料DIY出一个 机身吧传动机构的精度保证上还得在这(论坛)学习学习知识在开始吧

(笑坏了肚子不关我事阿~~~因为我用了很多山寨的方面去实现。目前阶段~~请不要提 高精度~~哈哈)

jrcsh 发表于 2010-3-21 02:51:13

以下是发在别的地方的一些过程记录,

(目前比较大的进展就是,解决了PCB图来源的获取,摆脱了PCB制图软件的局限性)

小会会的PCB板电路雕刻机-DIY计划**立项**(2010-01-20 21:11 )

初步计划于 2010完成 6月31日前 完成 大体能 上线工作

主要部件

1.三轴机 (DIY)

2.机械控制电路 (DIY,自主知识产权)

3.上位机电脑控制软件+ PCB画图软件 (只能用现有的软件拼出来 目前选中的有
                                    windows.自带的画图
                                    串口小助手
                                    按键精灵
                                    云台控制软件)

jrcsh 发表于 2010-3-21 03:03:47

这玩样目前的定位 还是在于刻一下 小面积的PCB 供DIY时使用工业生产~~~是行谣远的路 实际上~~我也有要作的工作没太多在时间花在这理~~~{现在就是这样,玩一下又过一些天}



3.上位机电脑控制软件+ PCB画图软件 (只能用现有的软件拼出来 目前选中的有
                                    windows.自带的画图 X (出局)
                                    串口小助手         V
                                    按键精灵         V
                                    云台控制软件)   X(出局)


电脑软件 部份现; 只保留用 按精灵和串口小助手 就足以完成原计划的内容(PCB画图软件不计在内)


软件部分 已经由按精灵 实现了图形扫入工作,也就是说画图软件是上 全支持你爱用哪种就哪种只要吧按精灵作成通用设置就是了 (不过这个是漫长的过程,~~先自己能用吧)

对图型的扫入工作 目前的原理是:对屏幕的分便率 为 识别率 对图象的线条颜色对行识别存入一个 *.INF 文件(就是这个方法,摆脱了PCB画图软件的局限性)

云台控制软件丢一边去了 完全由串口助手进行通信及控制

steel 发表于 2010-3-21 07:48:42

先把重点放在机械的精度上吧,机构可以参考《现代实用机床设计手册》

jrcsh 发表于 2010-3-21 09:09:32

http://cache.amobbs.com/bbs_upload782111/files_27/ourdev_539921.jpg
这是之前写的一种扫图出来的方法比较落后的一种 (原文件名:58_7762_6448855730d35d4.jpg)

http://cache.amobbs.com/bbs_upload782111/files_27/ourdev_539922.jpg
已经被用inf文件记录坐标值的方法替代 (原文件名:58_7762_1b3084eea2a6de8.jpg)



重要说明:我要自主开发图象扫描程序的原因在于 ,控制板也是自己DIY但水平有限很可能短期内兼容不了其它通用的控制协议

         从应用来说只要能控制机械平上平下就行至于 斜线和 弧线 也有可能作到吧 但还是先吧 原来的方案整出来吧

jrcsh 发表于 2010-3-21 11:45:50

回复【3楼】steel 型钢
-----------------------------------------------------------------------

~~~手册~~~~~   晚上看收想睡觉坐车看书更想睡觉~~~人_大了年老了~~~~

HuWenjin 发表于 2010-3-21 21:15:37

也许控制软件,我可以帮你写

jrcsh 发表于 2010-3-21 22:48:13

回复【6楼】HuWenjin 胡文晋
也许控制软件,我可以帮你写
-----------------------------------------------------------------------

~~~ 真的 我不是在~~~和周公上网来到这 ~~呵呵


          先谢谢了我先吧按精灵 笨法子 实现 控制之后

          在吧流程给你你在帮我写成程序好了 ~~这直好

         在别的地方叫人帮忙写个 串口收发数据转到 TXT的都 没空~~~

Argee 发表于 2010-3-21 23:20:27

我是专泼冷水的,莫怪。LZ的图像扫描做法做PCB,无异于缘木求鱼;对于艺术图样雕刻,还说得过去。

我来问一个具体PCB雕刻的技术问题:打孔可以识别出来吗?显然不行。
希望能够泼醒LZ,研究gerber file,你的精力会更有价值。图像截屏是个讨巧的办法,对于抄版可能有些许意义,但对于自己画layout,拥有gerber,就是弯路 + 弯路,兜了个大圈子了。因为你声明的定位是PCB用途,所以劝你重归征途。


当然,对于图形浮雕,还是挺有意义的。

jrcsh 发表于 2010-3-22 01:16:48

回复【8楼】Argee
我是专泼冷水的,莫怪。LZ的图像扫描做法做PCB,无异于缘木求鱼;对于艺术图样雕刻,还说得过去。
我来问一个具体PCB雕刻的技术问题:打孔可以识别出来吗?显然不行。
希望能够泼醒LZ,研究gerber file,你的精力会更有价值。图像截屏是个讨巧的办法,对于抄版可能有些许意义,但对于自己画layout,拥有gerber,就是弯路 + 弯路,兜了个大圈子了。因为你声明的定位是PCB用途,所以劝你重归征途。
当然,对于图形浮雕,还是挺有意义的。
-----------------------------------------------------------------------

回复【8楼】Argee
我是专泼冷水的,莫怪。LZ的图像扫描做法做PCB,无异于缘木求鱼;对于艺术图样雕刻,还说得过去。

R:~~~先从简单的开始玩吧,虽然知是弯路一条,但天生爱折腾,(当然我对PCB的对位是简单的精度不是太高的,《机械还没出来也不知能达到什么精度,反正要精度就烧钱就出来了,不过这样和我DIY的初宗又不大同了。就象消回差问题,我是用了软件加电路来减少的,没有使用高价的机械机构。玩吗 哪就折腾吧》)

我来问一个具体PCB雕刻的技术问题:打孔可以识别出来吗?显然不行。
R:如果 以目前我用按精灵写的程序,吧图象转化到画图上在事先点出 孔是可以自动打穿去的
这些功能都是在软件上的实现

不过我前期的出发点让你见笑了 洗出PCB板后在手工在上边补打孔~~~ 呵呵笨法子




希望能够泼醒LZ,研究gerber file,你的精力会更有价值。
R:你高看我了 如果我是个合格的程序员就不会用 功能低下效率一般般 的按精灵来写程序了(我用的东西大多是傻瓜的呵呵)
或许你可以看一下我一路成长的过程,玩到这份上不容易阿(还有自学为主)

图像截屏是个讨巧的办法,对于抄版可能有些许意义,但对于自己画layout,拥有gerber,就是弯路 + 弯路,兜了个大圈子了。因为你声明的定位是PCB用途,所以劝你重归征途。
R:目前为止 ~~我还没有一个专业画PCB 的软件上手 (同时画出的PCB图靠的是当年机械制图和CADR12的基础)


当然,对于图形浮雕,还是挺有意义的。
R~~我终于 捉到 ~~~机会说 你错了~~~ 哈哈   我为什么会说是PCB专用这是因为 平面图象识别的缺陷~~只对平面 不知高度这一数据
打洞靠的是事先设定好了的 主轴给进量控制

cooleaf 发表于 2010-3-22 10:05:02

鼓励创新!!!

jrcsh 发表于 2010-3-22 11:23:44

~~~在策划着吧 电火花 移植过来 烧板~~~但出来的电路直线只怕~~狗牙印很严重

jrcsh 发表于 2010-3-22 11:30:53

我坏主意很多~~~ 但技术基底不好   需要“借用”大家的力量 作合伙祸害天下

Argee 发表于 2010-3-22 14:24:48

明白了LZ的用途了.

似乎这样的做法也说得通,希望能有较好的应用效果。不过,还是觉得这样就拿手工点孔而言,工作量还是满大。
用你同样的方法,换用专门的PCB Layout软件(如Pads),可以单独显示孔,你的方法也可以奏效。

jrcsh 发表于 2010-3-22 18:32:17

回复【13楼】Argee
明白了LZ的用途了.
似乎这样的做法也说得通,希望能有较好的应用效果。不过,还是觉得这样就拿手工点孔而言,工作量还是满大。
用你同样的方法,换用专门的PCB Layout软件(如Pads),可以单独显示孔,你的方法也可以奏效。
-----------------------------------------------------------------------



我一般 DIY的电路目前还不超过 100洞的



这几天看上电火花的技术--先吧这关攻下来吧--(以前跟风学人玩电磁GUN时作过这类控制系统,上手为当快行多)



电路方案上 现在的想法是 给进控制也很好控制   利用电压检测   

比如 放电间隙设计在 60V 的话我检测充电电压 如果达到 65或70V 就吧主轴放下点或是 移动或是向上位机返回可以进入下一个坐标的信号


放电电路到 是不少手上还有些闪光电容可以接近短路的性能来放电

用 并联充电 串联放电 或是 电感升压什么的~~反正 这个不是问题

到是找放电板材料 成了问题要很细很细可以经得起放行多次行次的电的材料~~~得找些专业人才问问去

jrcsh 发表于 2010-3-22 19:10:22

用这类来~~~会不会BT了点~~~   

这是别人作的~~~~成本在 100多头

http://cache.amobbs.com/bbs_upload782111/files_27/ourdev_540279.jpg
(原文件名:0000000.jpg)

mlhorizon 发表于 2010-3-22 19:21:33

回复【15楼】jrcsh 邪恶的小会会
用这类来~~~会不会BT了点~~~   
这是别人作的~~~~成本在 100多头


(原文件名:0000000.jpg)
引用图片

-----------------------------------------------------------------------

这个是电弧,完全无法控制精度!

jrcsh 发表于 2010-3-22 19:59:10

回复【16楼】mlhorizon
回复【15楼】jrcsh 邪恶的小会会
用这类来~~~会不会BT了点~~~   
这是别人作的~~~~成本在 100多头
<CENTER>
<FONT color=green>(原文件名:0000000.jpg)</FONT> </CENTER>
<CENTER><A class=tt16 onclick="fnQuickImageQuote(this,'files_27/ourdev_540279.jpg','原文件名:0000000.jpg')" href="###">引用图片</A></CENTER>
-----------------------------------------------------------------------
这个是电弧,完全无法......
-----------------------------------------------------------------------




哪~~~~接着 恶补 电火花的 知识去

不过~~~电极放电不就是电弧

zglike 发表于 2010-3-22 22:44:31

四倍压后这么高的电压?输入是多少V?
看电弧长度,电压应在10万V之上!!

gkim 发表于 2010-3-22 23:07:56

http://cache.amobbs.com/bbs_upload782111/files_27/ourdev_540321.jpg
图片生成G代码工具 (原文件名:1.jpg)

我猜楼主是想做这个,这是我之前做的软件,工具图片的颜色来设置该位置的动作。

kingsabbit 发表于 2010-3-22 23:41:44

楼主专业呀

jrcsh 发表于 2010-3-23 01:04:04

回复【19楼】gkim

图片生成G代码工具 (原文件名:1.jpg)
我猜楼主是想做这个,这是我之前做的软件,工具图片的颜色来设置该位置的动作。
-----------------------------------------------------------------------

~~~利害 ~~~ 我的想法是直接分拆图片来控制

G代码 我现在没能力整所以才,自己开发简单的控制系统上下左右前后没了 哈哈 最多在补充点指令不会超过10条吧 现有的蓝图框架

jrcsh 发表于 2010-3-23 01:04:47

~~~看到你的软件~~~多让人动心阿能无限期~~~借来用用不

jrcsh 发表于 2010-3-23 12:34:55

关于控制软件


今天看到这个~~

32楼】 chrysler   
是的,简单的线路了还可以,复杂的线路还真是有点靠不住。
---------------------
我们试雕A3977驱动器的PCB,结果运算花了半小时,(村长那次),开始雕刻圆形焊盘时,看到它雕几个点的距离,再抬刀一次,简直想灭了这个软件。

垃圾啊。


!~~~~~~~这么象我在折腾的软件的~~~~~~看来还得作多一个 判断~~有每点上下一次了还是判断一下 下一点是否有要加工的点有就移动过去没有就 起刀走向下一点
__________________________


呵呵 这个问题 在电脑控制端很容易 优化

cooleaf 发表于 2010-3-23 13:42:55

“电火花”雕刻机??

h2feo4 发表于 2010-3-23 13:48:46

关注一下

HuWenjin 发表于 2010-3-23 16:31:56

回复【7楼】jrcsh 邪恶的小会会
回复【6楼】HuWenjin 胡文晋
也许控制软件,我可以帮你写
-----------------------------------------------------------------------
~~~ 真的 我不是在~~~和周公上网来到这 ~~呵呵
          先谢谢了我先吧按精灵 笨法子 实现 控制之后
          在吧流程给你你在帮我写成程序好了 ~~这直好
         在别的地方叫人帮忙写个 串口收发数据转到 TXT的都 没空~~~
-----------------------------------------------------------------------

需要的话,把流程和要求发邮件给我 huwenjin##Foxmail.com

jrcsh 发表于 2010-3-23 21:44:49

好阿好阿先记下

jrcsh 发表于 2010-4-5 00:51:59

恶劣机身终于 在今天准备了些材料

25块 收了一个EPSON J产 小型打印机 机械核心(全新)(已经分解 打算拿来当龙门架)
二手进口抽屉导轨 4条可能只用一条就行了 导轨是分上中下3层的 打算吧 中间一层 切断 分成离开上下层这个精度就相对高了
反正~行程一层达到 40CM 3层打开了 快有1M了~~~直BT 装抽屉到不错 用来给CNC用 多余的行程 还下降了精度


由于导轨的特点~~~ 有点想吧 龙门架安放在导轨上 工作面不动~~~


http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_543743.jpg
(原文件名:1.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_543744.jpg
(原文件名:2.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_543745.jpg
(原文件名:3.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_543746.jpg
(原文件名:34.jpg)

jrcsh 发表于 2010-4-5 23:53:55

今天的进度就到这了 ~~~




http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_543940.jpg
(原文件名:12.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_543941.jpg
(原文件名:16.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_543942.jpg
(原文件名:18.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_543943.jpg
看不 偏差还是不小阿 不过 这样装已经不错了 在能接受内 哈哈 (原文件名:19.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_543944.jpg
(原文件名:20.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_543945.jpg
(原文件名:21.jpg)

damoplus 发表于 2010-4-6 00:22:26

关注ing。。。

Argee 发表于 2010-4-6 00:29:28

jrcsh 邪恶的小会会

来有趣的了,支持下。8-)

我在工厂里看到他们在显微镜下DIY的滑台也是抽屉导轨的,这东西性价比还是挺好的。

jrcsh 发表于 2010-4-6 00:44:49

回复【31楼】Argee
jrcsh 邪恶的小会会
来有趣的了,支持下。8-)
我在工厂里看到他们在显微镜下DIY的滑台也是抽屉导轨的,这东西性价比还是挺好的。
-----------------------------------------------------------------------


要行好的哪些10来块 的就不行了 摇晃得利害

jrcsh 发表于 2010-4-9 21:44:49

Z 轴!!还是直流机

我的恶劣JJ 成功的话 会有多少机械高手无语

CNCxinshou 发表于 2010-4-9 23:25:27

支持你,很有创意。一定能成功。

jrcsh 发表于 2010-4-23 01:36:03

开始在折腾 控制系统机械部分进度不大

118139 发表于 2010-4-23 01:58:15

这样的DIY才叫经典。。得顶

我用的材料跟你一样,导轨和打印机
除了打印机用针式的,行程比较长一些。。外

我想做台简单的印刷机器

jrcsh 发表于 2010-4-24 11:04:03

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_548836.jpg
(原文件名:1.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_548837.jpg
(原文件名:2.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_548838.jpg
(原文件名:3.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_548839.jpg
(原文件名:4.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_548840.jpg
(原文件名:5.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_548841.jpg
(原文件名:6.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_548842.jpg
(原文件名:7.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_548843.jpg
(原文件名:8.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_548844.jpg
(原文件名:9.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_548845.jpg
(原文件名:10.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_548846.jpg
(原文件名:11.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_548847.jpg
(原文件名:12.jpg)

jrcsh 发表于 2010-4-24 11:07:09

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_548848.jpg
(原文件名:13.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_548849.jpg
(原文件名:14.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_548850.jpg
(原文件名:15.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_548851.jpg
(原文件名:16.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_548852.jpg
(原文件名:17.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_548853.jpg
(原文件名:18.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_548854.jpg
(原文件名:19.jpg)

jrcsh 发表于 2010-4-24 11:08:25

主轴的哪个 升降电机由于用了 带减速箱的 小步进电机 速度太慢了又换了一个 直流带减速 和自锁的

jrcsh 发表于 2010-4-24 11:26:15

头顶上的哪个 固定机构~~是能动的 只起到一定的 限位 可以摇摆计划在 2个最长的螺丝哪 装备多2个 缓冲弹簧 这样 对 刀具和电机都好上升或下降时 由于 弹簧 起到了一个过度 缓冲的作用

比如说 下降主轴时刀具不会一下 承受 到 丝杆带来的传动压力 由弹簧起到一个过度

118139 发表于 2010-4-24 13:35:28

这个真是越来越山寨了。。^_^

Z轴上那些东西都是用焊锡焊的?

jrcsh 发表于 2010-4-24 18:19:54

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_548983.jpg
(原文件名:1.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_548984.jpg
(原文件名:2.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_548985.jpg
(原文件名:3.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_548986.jpg
(原文件名:4.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_548987.jpg
(原文件名:5.jpg)





一下午 就在折腾这个轴目前 水平 比较好保证

tedden 发表于 2010-4-24 19:36:11

楼主强人,顶个

jrcsh 发表于 2010-4-27 22:29:44

安装 光栅和转速放大机构 工作量 比较高 先上 2个步进电机 开环控制加限位 开关 尽快得吧机器动起来之后转入软件 编写 阶段

jrcsh 发表于 2010-4-27 23:13:09

控制 板 规划    目前是先用 开发板 临时搭出

CNC 调好后 在洗出 一体的控制板



http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_549785.jpg
(原文件名:QQ截图未命名.jpg)

jrcsh 发表于 2010-4-27 23:15:30

忘了还有 限位开关

jrcsh 发表于 2010-5-1 13:29:12

从这个机架来看 各种毛病 都有些哈哈


不过我打算 只用 单向的行程 来差少 回差误差固定不捞等问题   问题很多 但我的花样也很多还是恶劣的



试机录象   给进运行速度很因为~~我用了很小很小的电机ourdev_550871.avi视频文件大小:20.63M) (原文件名:照片 010.avi)
http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_550872.jpg
(原文件名:1.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_550873.jpg
(原文件名:2.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_550874.jpg
(原文件名:2.5.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_550875.jpg
(原文件名:3.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_550876.jpg
(原文件名:4.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_550877.jpg
(原文件名:5.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_550878.jpg
(原文件名:6.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_550879.jpg
(原文件名:7.jpg)

jrcsh 发表于 2010-5-1 22:16:28

欢呼一下 ~~~晚上 没有控制程序下

利用手工控制通电试运行了机子    很好没成为 雕刀杀手哈哈~~~~~

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_550959.jpg
(原文件名:1.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_550960.jpg
(原文件名:2.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_550961.jpg
(原文件名:3.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_550962.jpg
(原文件名:4.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_550963.jpg
(原文件名:5.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_550964.jpg
(原文件名:6.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_550965.jpg
(原文件名:7.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_550966.jpg
(原文件名:8.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_550967.jpg
(原文件名:9.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_550968.jpg
(原文件名:10.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_550969.jpg
(原文件名:11.jpg)

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_550970.jpg
(原文件名:12.jpg)

jrcsh 发表于 2010-5-1 22:27:59

还有录象呵可

点击此处下载 ourdev_550976.avi视频文件大小:24.22M) (原文件名:照片 035.avi)


还有个 大的 快90M 就不放上来了 哈哈

jrcsh 发表于 2010-5-4 11:32:11

写了控制系统 框架 也差不多是这样了能支持 100条 指令

在构思着 加上 半脱机的功能(已经有了 就是这个洗平面的动作是半自动的会自己完成洗平台的工作)

目前JJ的工作速度不理想~~~~乌龟爬的速度



#include<reg52.h>
#include <intrins.h>       //内部包含延时函数 _nop_();
#define uchar unsigned char
#define uintunsigned int
unsigned char flag1,flag,a,e1,e2,e3,e4,e5,e6,e7,e8,e9,m,a1,i,x,u,r,N,j,jj,z3,t,w,zdw,x1,z4,xmai,aa,zs;
sbitkey1 = P3^2;       //正转
sbitkey2 = P3^3;       //反转
sbitkey3 = P3^4;       //停止
sbitkey4 = P3^5;
sbitkey5 = P3^6;      
sbitkey6 = P3^7;
voidxjfj();   
voidyjfj();
voidzjfj();
voidxjzj();
voidyjzj();
voidzjzj();
voidjs();
void delay(uint t);
sbit w1=P2^7;
sbit w2=P2^6;
sbit w3=P2^5;
sbit w4=P2^4;
uchar code table[]={0x28,0xeb,0x32,0xa2,0xe1,0xa4,0x24,0xea,0x20,0xa0,0xff};
uchar code zj1={0x01,0x03,0x02,0x06,0x04,0x0c,0x08,0x09}; //P10~3. P20-3
uchar code fj1={0x09,0x08,0x0c,0x04,0x06,0x02,0x03,0x01}; //P10~3. P20-3

uchar code zj2={0x10,0x30,0x20,0x60,0x40,0xc0,0x80,0x90}; ////P14~7.
uchar code fj2={0x90,0x80,0xc0,0x40,0x60,0x20,0x30,0x10}; ////P14~7.
void main()
{
        TMOD=0x20;//设置定时器1为工作方式2
        TH1=0xfd;
        TL1=0xfd;
        TR1=1;
        REN=1;
        SM0=0;
        SM1=1;
        EA=1;
        ES=1;
e1=0;
e2=0;
e3=0;
e4=0;
e5=0;
e6=0;
e7=0;
e8=0;
e9=0;
a=0;
zs=5;
//电机远转圈数
while(1)
                {
/*
P0=table;
w1=0;
P0=0xff;
w1=1;
P0=table;
w2=0;
P0=0xff;
w2=1;
*/
//************************************

if(a1==0)
{
if(a==1) //X轴前进
{
xjzj();
}//jj1

if(a==2)
{
xjfj();
}
if(a==3)
{
yjzj();
}

if(a==4)
{
yjfj();
}
if(a==5)
{
zjzj();
}

if(a==6)
{
zjfj();
}

}// a1==0


if(a1==1)
{
P0=table;
w3=0;
P0=0xff;
w3=1;
if(a==1)
{
zs++;
a=0;
}

if(a==2)
{
zs--;
a=0;

}
if(zs>9)
{
zs=9;
}
if(zs<1)
{
zs=1;
}

}//a1==1

if(a1==3)
{
if(a==1)
{
xjzj();
e1++;
js();
}
if(a==2)
{
yjzj();
e1++;
js();
}
//-------------
if(a==3)
{
xjzj();
e1++;
js();
if(e4>8)
{
a=4;
e1=0;
e2=0;
e3=0;
e4=0;
e5=0;
e6=0;
e7=0;
e8=0;
e9=0;
}
}
if(a==4)
{
yjzj();
e1++;
js();
if(e3>3)
{
a=3;
e1=0;
e2=0;
e3=0;
e4=0;
e5=0;
e6=0;
e7=0;
e8=0;
e9=0;
}
}



}//a1==3

if(a1==4)
{

if(a==1)
{
P0=table;
w1=0;
P0=0xff;
w1=1;
P0=table;
w2=0;
P0=0xff;
w2=1;
P0=table;
w3=0;
P0=0xff;
w3=1;
P0=table;
w4=0;
P0=0xff;
w4=1;
}
if(a==2)
{
P0=table;
w1=0;
P0=0xff;
w1=1;
P0=table;
w2=0;
P0=0xff;
w2=1;
P0=table;
w3=0;
P0=0xff;
w3=1;
P0=table;
w4=0;
P0=0xff;
w4=1;
}

if(a==3)
{

P0=table;
w4=0;
P0=0xff;
w4=1;
}               
if(a==9)
{
e1=0;
e2=0;
e3=0;
e4=0;
e5=0;
e6=0;
e7=0;
e8=0;
e9=0;
}

}//a1==4
//------------------------------------
                }// w1
}//m

void ser() interrupt 4
{
        RI=0;
//        P1=SBUF;
        aa=SBUF;
a=0;
a1=0;
for (m=0;m<aa;m++)
{
a++;
if(a>15)
{
a1++;
a=0;
}
if (a1>9)
{
a1=9;
}
}
//a1=a;

/*
N1=0;
N2=0;
N3=0;
for (m=0;m<a;m++)
{ N1++;
if(N1>9)
{
N2++;
N1=0;
}
if (N2>9)
{
N2=0;
N3++;
}

}
*/
}
/********************************************************/                     
/********************************************************/                                                
/* 延时t毫秒
/* 11.0592MHz时钟,延时约1ms                                                                                          
/********************************************************/
void delay(uint t)
{                           
   uint k;
   while(t--)
   {
   for(k=0; k<125; k++)
   { }
   }
}
/********************************************************
/*
/*步进电机正转 x轴
/********************************************************/
voidxjzj()
{
   //uchar i;
   //uintj;
   for (j=0; j<1; j++)         //转1*n圈
    {
                          //退出此循环程序
   for (i=0; i<8; i++)   
    //for (i=0; i<2; i++)    //一个周期转30度
      {
          P1 = zj1;          //取数据
          delay(zs);            //调节转速
      }
    }
}
/********************************************************
/********************************************************/
/*步进电机反转 x轴
/********************************************************/
voidxjfj()
{
   //uchar i;
   //uintj;
   for (j=0; j<1; j++)         //转1*n圈
    {
                          //退出此循环程序
   for (i=0; i<8; i++)   
    //for (i=0; i<2; i++)    //一个周期转30度
      {
          P1 = fj1;          //取数据
          delay(zs);            //调节转速
      }
    }
}


/********************************************************
/*
/*步进电机正转 y轴
/********************************************************/
voidyjzj()
{
   //uchar i;
   //uintj;
   for (j=0; j<1; j++)         //转1*n圈
    {
                          //退出此循环程序
   for (i=0; i<8; i++)   
    //for (i=0; i<2; i++)    //一个周期转30度
      {
          P1 = zj2;          //取数据
          delay(zs);            //调节转速
      }
    }
}
/********************************************************
/********************************************************/
/*步进电机反转 y轴
/********************************************************/
voidyjfj()
{
   //uchar i;
   //uintj;
   for (j=0; j<1; j++)         //转1*n圈
    {
                          //退出此循环程序
   for (i=0; i<8; i++)   
    //for (i=0; i<2; i++)    //一个周期转30度
      {
          P1 = fj2;          //取数据
          delay(zs);            //调节转速
      }
    }
}

/********************************************************
/*
/*步进电机正转 z轴
/********************************************************/
voidzjzj()
{
   //uchar i;
   //uintj;
   for (j=0; j<1; j++)         //转1*n圈
    {
                          //退出此循环程序
   for (i=0; i<8; i++)   
    //for (i=0; i<2; i++)    //一个周期转30度
      {
          P2 = zj1;          //取数据
          delay(zs);            //调节转速
      }
    }
}
/********************************************************
/********************************************************/
/*步进电机反转 z轴
/********************************************************/
voidzjfj()
{
   //uchar i;
   //uintj;
   for (j=0; j<1; j++)         //转1*n圈
    {
                          //退出此循环程序
   for (i=0; i<8; i++)   
    //for (i=0; i<2; i++)    //一个周期转30度
      {
          P2 = fj1;          //取数据
          delay(zs);            //调节转速
      }
    }
}
voidjs()
{

if(e1>9)
{
e2++;
e1=0;

//------------------------

//------------------------

if(e2>9)
{
e3++;
e2=0;

}
}//e1~2

if(e3>9)
{
e3=0;
e4++;
if(e4>9)
{
e4=0;
e5++;
}
}//e3 ~4


if(e5>9)
{
e5=0;
e6++;
if(e6>9)
{
e6=0;
e7++;
}
}// e5~6

if(e7>9)
{
e7=0;
e8++;
if(e8>9)
{
e8=0;
e9++;
}
}//e7~8
if(e9>9)
{
e9=9;
}
}//voi



http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_551341.jpg
(原文件名:QQ截图未命名.jpg)

zlq2000 发表于 2010-5-4 12:01:29

楼主强人,机电一体化人才!

aydali 发表于 2010-5-5 22:25:46

:
    呵呵,这种因陋就简的DIY方式让我看着很亲切,因为我也是属于没什么正规条件却很喜欢鼓捣的那种人。

jrcsh 发表于 2010-5-5 23:40:19

回复【52楼】aydali
:
    呵呵,这种因陋就简的diy方式让我看着很亲切,因为我也是属于没什么正规条件却很喜欢鼓捣的那种人。
-----------------------------------------------------------------------

y 主要是能挥发的银子有限

jrcsh 发表于 2010-5-6 00:18:51

报告点 控制系统的进度   

这两天在 洗平工作面~~~又学了点东西 ~~~洗面还是得用洗刀~~~~用雕刀~~~惨不仁阿~~~~~~《没有金刚钻不囊瓷器活,正解的使用正确的工具,事半功倍》 (虽然路是走了弯的不少~~~东西是学到了哈哈, 洗刀还是自用麻花钻改磨的,有点象 单刃刀)


Y轴 X轴单向控制的 流程已经确定 (Z轴的回差直接忽视它 哈哈) 在向X轴能双向工作 努力

对 PCB图的 识别 上 又有新的一个思路

加装摄象头 (USB) 于 CNC机的 龙门架上 作到 同步移动,打印出PCB 图到 白纸上, 用摄象头 拍着,图象传送到 电脑 ,

由电脑对中心点(加一个偏移量) 对行识别   判断是否洗去 物料 (少了一个 PCB转G代码的流程)

(以我的三角猫编程功夫因当能作到只是这样作~~~目前只适合多的机子~~~因为尾吧后边有还有空间~~~呵呵 别的机子可能要在后边加装一些东西~~~~ 或叫 功能扩展配件,, 精度就决定于 打印机 的效果 和 摄象头的效果)

jrcsh 发表于 2010-5-6 00:21:29

也可以 用 光电信号识另电路 替代 哪个完全 脱机了

吧打印出来的 PCB 丢哪 放好东西开机 不管了 哈哈

flybird2010 发表于 2010-5-6 20:21:07

又见导轨,还见到几块木地板,和我的花纹也很像啊!
-----------------------------------------------
给楼主加砖添瓦

ilawp 发表于 2010-5-7 10:34:28

佩服,真佩服。给我同样的东西我就绝对做不出能用的东西来

jackmo 发表于 2010-5-7 11:35:25

真佩服

jrcsh 发表于 2010-5-7 15:13:41

http://cache.amobbs.com/bbs_upload782111/files_28/ourdev_552153.JPG
半脱机 预装入 X轴的一个行程 (原文件名:2321321321.JPG)

flybird2010 发表于 2010-5-11 14:40:41

参观

LT1234567 发表于 2010-5-11 16:28:09

动手能力真强

jrcsh 发表于 2010-5-12 11:56:56

硬件控制系统 接近 85% 完成度

准备着手 软件系统部分


X轴给进 精度 达到0.0147mm可是~~~ 主轴的轴跳 就有 0.13mm主轴支架刚性不足 可以~~跳动 4mm~~~   


X轴行程开关内行程= 96mm-6.27mm=89.73mm
X轴行程开关内行程步进电机周期测得== 6075周期共测试 6次5次的数据为6075 一次为6076

在保证完整的8拍周期下 X轴给进精度=89.73mm / 6075周期 = 0.0147mm/周期 (如果对周期进行分解还能在提升精度)


Y 轴及Z轴还没进行测试及计算 (预计这2个的不会测得很准确,X轴上装了光电开关和 百分尺的量程达到 , Y轴就不好测了)

jrcsh 发表于 2010-5-15 17:06:39

进度报告

至发贴止机械结构完成度 100%支架的刚性还不是很理想 有跳动 行程限位开关完成 2光电2机械

          完成 X轴Z轴行程测试Y轴还在等更长测量工具来测试

      工作平台 与主轴平行度 修整完成 98%面积 可能去 切去 1/8改为高平面加工面

      
      CNC 控制系统 主体及基础功能 100% 完成 已经进入 附加、辅助、扩展功能的开发
            通信协议 定义 256条为方便记忆 精简为 100条 并编为 10组 每组10条

      上位机控制端    整体进度由于 Y轴行程周期数据未出 影响进度
                  子功能:
                      图象识别子功能100% 完成
                      通信协议      100%完成
                  精度控制:      30%    Z、X 轴已经有数据Y轴未有数据。

jrcsh 发表于 2010-5-27 17:47:21

恶搞功能 no1 :加了块板 使到摄象头与主轴是刚性的联接 ~~~~~~之后 开始 PCB复印机~~~~~


http://cache.amobbs.com/bbs_upload782111/files_29/ourdev_557501.jpg
(原文件名:1.jpg)

http://cache.amobbs.com/bbs_upload782111/files_29/ourdev_557502.jpg
(原文件名:2.jpg)

http://cache.amobbs.com/bbs_upload782111/files_29/ourdev_557503.jpg
(原文件名:3.jpg)

http://cache.amobbs.com/bbs_upload782111/files_29/ourdev_557504.jpg
(原文件名:4.jpg)




半成品    晚上找块 板来“复印”一下试试

tda1514 发表于 2010-5-28 16:51:40

虽然精度不是太高,但有些场合还是很方便的

vy328854275 发表于 2010-5-30 19:33:06

很好,动手能力真的很强~~向大师学点技术~~~

albertjin 发表于 2010-5-30 20:48:46

不错。楼主精神可嘉,难得有把整个从头做到尾全自己动手,偶像啊

如果转成bmp再点阵控制雕刻机,恐怕线条不整齐;前面关于gerber的讨论不错,楼主该参考一下。

jrcsh 发表于 2010-5-30 23:45:44

回复【67楼】albertjin
不错。楼主精神可嘉,难得有把整个从头做到尾全自己动手,偶像啊
如果转成bmp再点阵控制雕刻机,恐怕线条不整齐;前面关于gerber的讨论不错,楼主该参考一下。
-----------------------------------------------------------------------

软件已经是直接识别 PCB软件上的图的 不用转BMP 作成色差大就行

http://cache.amobbs.com/bbs_upload782111/files_29/ourdev_558352.jpg
这个图就吧黑边部分洗去 (原文件名:1.jpg)

http://cache.amobbs.com/bbs_upload782111/files_29/ourdev_558353.jpg
这个图就只保留 绿色部分。其实作到一次性连同钻洞一同完成也有很高的可行性,可换刀头在进行开洞 (原文件名:2.jpg)




已经完成 由点向 线的升级会一次性连续给进到 主轴位置改变

albertjin 发表于 2010-5-31 00:16:00

【68楼】jrcsh邪恶的小会会
-----------------------------------------------------------------------

你这个是用截屏获得位图?那还不是一样的

最近在考虑就雕刻机用来打孔、铣边缘,然后用感光膜,再腐蚀。主要是以下考虑,

- 完全雕刻的效率不高
- 雕刻可能会损伤板基,薄的板基本上不适合
- 雕刻定位比较费时
- 刀头是损耗的,考虑成本

- 打好孔,感光更容易两面对齐
- 如果已经腐蚀过了,孔就打不好,没了铜皮铣边缘就很毛糙

- 热转印在打好孔的情况下完美对齐有点难度回复

jrcsh 发表于 2010-5-31 11:37:14

回复【69楼】albertjin
【68楼】jrcsh邪恶的小会会
-----------------------------------------------------------------------
你这个是用截屏获得位图?那还不是一样的

   我是捉图出来给你看 ~~~直接识别这个软件上画出来的图
   不过了 这只是我想省下 捉图的这个过程和 精度可调整的功能捉成JPGBMP 一样可以加工出来

最近在考虑就雕刻机用来打孔、铣边缘,然后用感光膜,再腐蚀。主要是以下考虑,
- 完全雕刻的效率不高

是不高 哈哈 但 线小的地方比腐蚀好

- 雕刻可能会损伤板基,薄的板基本上不适合

很小 这个可以通过 设定 来控制损伤量

- 雕刻定位比较费时

不会阿~~~ 我就吧板丢了 吧水平边放好就行了先洗出一条水平边 打一个穿洞的定位孔 ~~~一路洗过去 完了在反过来 (~我的由于自己设计控制程序~~~ 我吧X轴 作成发可以 反转工作~~~ 对付这个很容易,只要反转X轴就可以了)

- 刀头是损耗的,考虑成本

损耗的地方主要就是 吃基板的量太多~~~~ 可以通过 设定 来控制损伤量

- 打好孔,感光更容易两面对齐
- 如果已经腐蚀过了,孔就打不好,没了铜皮铣边缘就很毛糙
- 热转印在打好孔的情况下完美对齐有点难度回复

-----------------------------------------------------------------------

12fen 发表于 2010-6-2 10:11:40

阿莫说过,呵呵,热转印 + 雕刻机打孔,完美啊

JQ_Lin 发表于 2010-6-2 11:29:09

jrcsh 邪恶的小会会,够邪恶的。
无论如何,都该顶一下!

jrcsh 发表于 2010-9-30 20:15:38

又要准备折腾了这次结构还是差不多 不过配合上位机软件会变成一台打洞专用 机工作面积 在 110X150 或 220X180

tuowai 发表于 2010-10-3 21:27:13

羡慕楼主,记号!

jrcsh 发表于 2010-10-7 19:21:43

现在的面积去到了 300X180工作面积 因当只有 240X150 高度现在是安 40mm 设计 刀具 最大4MM 最小0.5mm


http://cache.amobbs.com/bbs_upload782111/files_34/ourdev_588100D27R2X.jpg
(原文件名:1-Y轴-及X轴导轨.jpg)

http://cache.amobbs.com/bbs_upload782111/files_34/ourdev_588101F69U11.jpg
(原文件名:2-工作而的一些思路.jpg)

http://cache.amobbs.com/bbs_upload782111/files_34/ourdev_588102B8D8OI.jpg
(原文件名:主轴.jpg)



材料~~~木头

hylpro 发表于 2010-10-7 20:25:04

mark.

wang_wangrui64 发表于 2010-10-9 02:44:57

标记!!!!!!!

jrcsh 发表于 2010-10-9 05:48:49

http://cache.amobbs.com/bbs_upload782111/files_34/ourdev_588402QSYGM5.jpg
(原文件名:主轴支撑坐终于有个样了--与电机的接口是个有意思的东西.jpg)

http://cache.amobbs.com/bbs_upload782111/files_34/ourdev_588403UPDNPL.jpg
(原文件名:基本有个样子了~~哈哈.jpg)

http://cache.amobbs.com/bbs_upload782111/files_34/ourdev_588404CF97C3.jpg
(原文件名:又接近了一点.jpg)

http://cache.amobbs.com/bbs_upload782111/files_34/ourdev_588405C0LV11.jpg
(原文件名:又接近了一点....jpg)

jrcsh 发表于 2010-10-9 06:01:37

http://cache.amobbs.com/bbs_upload782111/files_34/ourdev_588406OP3KRV.jpg
原文件~~~~不能直接上传上来~~~~哪天在打包包了 (原文件名:主轴联接器--可大误差--30度以内的倾斜角.jpg)

http://cache.amobbs.com/bbs_upload782111/files_34/ourdev_588407GSPVH9.jpg
空出的地方是不打算装像胶缓冲的 (原文件名:主轴联接器--可大误差--30度以内的倾斜角..jpg)








晚上些时候在写一些设计心得吧~~~~~~~~~~~~~~

ggq71 发表于 2010-10-9 11:19:32

回复【79楼】jrcsh邪恶的小会会
-----------------------------------------------------------------------

你在广州吗?能参观一下你的大作吗?

jrcsh 发表于 2010-10-9 12:01:36

回复【80楼】ggq71
回复【79楼】jrcsh邪恶的小会会
-----------------------------------------------------------------------
你在广州吗?能参观一下你的大作吗?
-----------------------------------------------------------------------

弟一台已经变成~~~其它东西的元件弟二台还在YY中
页: [1]
查看完整版本: MCU和机械都会点~在折腾一个完全自主开发的CNC(PCB雕刻专用)走另类路线特跑来学习