迅维网

标题: 想尝试下制作BGA焊机控制系统 [打印本页]

作者: 王利群    时间: 2009-4-8 14:01
标题: 想尝试下制作BGA焊机控制系统
本帖最后由 王利群 于 2009-4-8 14:40 编辑

不知道能不能成功。但是想尝试下。希望有使用BGA机经验的人。多多指点。给点数据。
大家可以跟贴。我会收集。然后上传电路与程序代码?大家再帮着指正与改进。
也希望懂单片机的高人一起进来开发。
开发成果归大家所有(都公开了。也不存在这个,呵呵。)

主要用来改进安泰信8205的机器。别的我没用过。不过我想系统可以通用的。(系统主要以反馈来决定工作状态。不是固定的设定几个对应的温度参数。这样供电压波动对系统也几乎不会影响。)

介绍一下自己:呆过一家做DVB的电子厂,工种,维修师傅。
              现做一家公司的电子产品设计,当然都是小产品。
              能力:能使用51 PIC EM单片机开发硬件与软件。
                    能使用ASM CCS DXP PADS 软件。

初步想法:1。使用PIC及16F877 MCU为中心开发。
          2。TOP 与BOTTOM HEAT 使用 SCR占空比控制。(因为加热头为交流电。所以不能使用PWM控制。使用交流过0同步检测电路精确控制导通角,反馈部分使用MCU ADC电路。转换精度5mv,合理选用反馈放大电路。放大部数可定为200-240倍)
             (当然也可以使AC-DC电路做成直流的。这样效果我想可以更好。只是自己没有本事可以做出200W以上的AC-DC电源。大变压器整流的那种就不要谈了。没意事。希望能做全桥电源的指点多多)
          3。使用PWM控制风扇转速(直流供电。可以使用MCU自身的PWM)
          4。LCD 1602显示(比较容易做),按键系统 6key ADD DEC MODE ACK RECALL START
          5。存储器使用MCU自带的EEPROM。256bytes(温段定为8断。可存16组数据,每段16bytes,设定温度,工作时间。)
               6。使用合适的热电偶做温度反馈。(电动势线性变化的最好。不行就查表来确定温度)
          7。合理处理温升斜率的问题。
          8。散热系统设计。
          9。PC接口。使用RS232 MCU内部资源。(上位机软件不会写。只会用超级终端)

我的联系方式:QQ53410412(注明BGA系统设计讨论) 电话:不写了。
作者: 东方电脑维修    时间: 2009-4-8 14:30
呵呵  有创意自己研究下
作者: 宇光    时间: 2009-4-9 09:24
如果你想搞个商品化产品,那么我有些建议:
1.不建议使用PIC16F877,因为易于被解密,性价比也一般,用偏门51吧。
2.建议采用MAX6675配合K型热电偶,进行信号调理,SPI接口简单,更重要的省去了调理电路的调试工作。不过你有有过程信号检测信号发生器或合适的电位差计的话就当我没说。      
3.使用PWM控制风扇转速,这个很好,但仅搞个电位器调节的线性调整电路也不错,简单嘛。
4.1602当然不错,也可再复杂些,弄个图形屏,直接显示温度曲线。
5.要真正处理好温升问题,这需要仔细研究PID或模糊控制原理,难度不低。
6.PC接口使用RS232,上位机软件不会写可以采用现有已知通讯协议的软件配合,将问题在单片机编程中解决。目前网上可以找到一些这样的温控器、万用表软件,另外在Excel中实现图形曲线也是一个思路。
作者: 问题不大哦    时间: 2009-4-9 09:31
想法不错哦      呵呵
作者: yzz163    时间: 2009-4-9 10:03
关键点:市场上一百多到几百的温控器已很成熟了,你设计的如何突破?

核心是:温控算法,专业的温控器厂商有大量的时间、资金做实验,找到最优算法。

我们自己做的话要超过他们(性能和价格)能有多大把握?

PS:PC接口使用RS232,上位机软件。我做过有源码(AVR C)。

几篇有关用单片机实现PID的文章:

标准的PID处理例程
http://www.ouravr.com/bbs/bbs_co ... PID&bbs_id=9999

936焊台用AVR模糊PID恒温控制
http://www.ouravr.com/bbs/bbs_co ... PID&bbs_id=9999

温控PID参数调节实验过程
http://www.ouravr.com/bbs/bbs_co ... PID&bbs_id=9999
作者: 王大修    时间: 2009-4-9 10:17
我也正在考虑温控系统的重新设计。
现在的加热控制都是固态继电器或者SCR过零占空比调节,弊端很大。
为什么没有人研究一下把交流点整流之后pwm驱动加热体呢?
作者: 王利群    时间: 2009-4-9 11:06
本帖最后由 王利群 于 2009-4-9 11:09 编辑

大虫科技。我加不了你QQ,你的好友达到上限了。。

感谢上面的各位提供出见意。我只是想尝试下。51的不实用。内部资源太少。太容易破解。算法的确是个问题。所以才说想尝试。不能保证成功。电路图已经在画了。好了之后上传。

还有就是不想与专业厂家比。但想在8205的基础上能做一些改进。

温控方面是想做成自适应反馈回路。

由于温度变化不是跳变的。是模拟量。所以用MCU来做调整应该有一定的空间。调整反应时间也是够的。必意最多也只会做到100Hz,也就是每秒模拟PWM,SCR导通角递增最多100.一个周期也就是一秒分2048个周期。单周期1024周期。通过算法可以确定斜率来确定PWM增加值。

价格方面不用担主。无件都不贵。PCB打样费用也不高。我这边有现成的公司资源。。

最后再次感谢大家给于的意见。上面的东西我会好好研究。谢谢大家支持~~~~~
作者: 王利群    时间: 2009-4-9 11:31
查了下MAX6675 的datsheet 果然是个好东西,不知道价格怎么样。

回 王大修

不用整流是因为。现有的发热丝是工作在交流状态下的。如果你用过VFD屏就知道交流加热的好处。直流加热的弊端。当然直流加热性能肯定会更好。温度线性变化更好。但问题是,哪种AC-DC转换器可以输出如此大的功率呢。对有的。直流焊机就可以达到这样的效果。但成本那个不是一般。体积也非常大。根不装不进8205里边去。。
作者: 王利群    时间: 2009-4-9 11:51
本帖最后由 王利群 于 2009-4-9 11:56 编辑

温度检测采用 10ms 测试一次,判断温升斜率是否>4度。减小SCR导通角。<2度,增加SCR导通角。MCU有足够的速度来完成这个测试。由于每次PWM的增加值比较小。所以不会出现全速加热导致温升离谱的问题。这些是看论坛里的一些有关BGA加热的贴子学习到的。用自己制作的好处是体积小。但通用性不强。功能较为实用。温升曲线比较容易控制。如果是16段以上的温器,我也不清楚价格。但这个做这个东西价格,如果不算开发费用的话。我想成本不会超过50块钱。

有关温度测试滞后的问题。由于加热不是突变的(PWM步进也比较小)。所以温度偏离应该不会太多。这时MCU可以自动侨正PWM以降低温度或保持温度。
另外就是K型热电偶的放置问题。是在加热器上,还是放在被加热物件上。请指教。。。

MCU测试过0电路比较简单。下图是一个简单的。当然也可以用全桥。可以省一个光耦。。

作者: 王利群    时间: 2009-4-9 12:54
采用PID控制方法,我先采用位置式输出方式,公式原型:u(t) = kp * e(t) + ki * [e(1) + e(2) + ....+ e(t)] + kd * [e(t) - e(t-1)],这里先做基本的PID算法,达到控制目标后再来优化算法提高恒温精度,考虑到实验温度过高实验时间会过长,所以我先定目标控制温度为110度,等控制好了再看其他温度会达到多少精度,为了提高加热速度提前20度开始PID控温

下面是调节参数的过程及数据:
参照网上一些方法,先确定Kp,即令Ki,Kd=0,只用比例调节,得到一个稳定的越接近控制目标的震荡参数,然后根据这个Kp和震荡周期来计算Ti,Td,

有哪位高手可以解释一下这里面,各个参数有意思。。
作者: 宇光    时间: 2009-4-9 13:35
不要以静止的眼光看待51,51始终处于进化之中,新51的资源也绝非AT89C51可比。目前有些51内部已经具有10位A/D(如果采用MAX6675的话,A/D就没有意义了)、硬件PWM、EEPROM、SPI接口了,而且很难破解。
16F877这样大众化的东西,简直就是待宰的羔羊,破解毫无悬念可言。不过你要是用PIC的18F这样的新系列,那可能要另当别论了。
大同江所说“K型电偶只能放在风枪的出风口处,并且和发热芯之间必须有遮挡,不然升温就不会是线性的。电偶如果放在被加热物件上,离发热芯太远了,温度还没跟上,发热芯就已经过热烧毁了”并不正确,ERSA的IR500A电偶就放在被加热物件上,实践证明是安全可靠的。
作者: 王利群    时间: 2009-4-9 13:56
本帖最后由 王利群 于 2009-4-9 14:44 编辑

PS 大同江。当然不会烧掉灯丝啊。PWM是可以控制的,这个不是断电器那种。温度不够就全功率加温。呵呵。电子器件增多是会降低设备和稳定性。但电子原件也不是那么不经用的。再就是对于BGA焊拉来讲。这种复杂可以降低更多的维修风险。相对来讲更划算,有得必有失。就是失多还是得多。这也是我想自己试试看的初忠。。谢谢你的指点。望再多多指点。

另外这个东西我并不打算要产品话。只是希望有一天能成功的话。大家可以受益。(当然我也没有能力断了BGA厂的生意。要不就不在这里混了,仅仅只是想给大家一种低价的可DIY的选择。专业的就是专业的。并不是我随便两下就可以OK的。呵呵。我也这么想。但是不可能。)

STC C8051Fxxx AVR 我知道这些。也多少会用一些,只是想用自己熟悉的来做。。这不是我们公司要求开发的产品,仅仅是个人爱好。谢谢大家支持。我会在这里继续吸收大家的意见。

刚刚看了一些有关PID算法的问题。里面的微分问题我们可以不考虑,也必须不用。因为这个是用来使温度以比较快的速度升到设定值,而我们的BGA加热要求是以4度/秒。这样只要单片开始从PWM=1开始递加。达到这个值后,进行PWM微调就可以了。一般1秒调整一次。达达到预设值后。改用10-100ms 调整PWM来使设定温度保持稳定。我想这个应该是可以的。

当然由于PWM增加速率问题。开始前期。温升肯定是达不到4度/秒。这个并不重要。只要他不超过5度/秒就行。但随着PWM的增加肯定在一定时间后可以达到这个值。程序中可以限定这个值,你想快点加温也不行。比如你要加热到500度。但你只给10秒的时候。那每就是50度。当然这是不可能的。我以前用过一个日本的BGA机。他就是加温到设定温度后就恒温。只到设定时间完成。才执行下一步温度设定。这也正好符合锡珠的特点。(潜水太多了。糊涂了。说的不对的地方他家不要见笑。我会不断更正自己的错误认识。谢谢大家)
作者: 王利群    时间: 2009-4-9 14:56
本帖最后由 王利群 于 2009-4-9 15:11 编辑

大同江说的对。但有的时候可以保持一下温度。让锡珠什么的。怎么个说法我不记得了。论坛里有这样的贴。

上面已经上传了过0 检测电路,我用的就是这个方法。谢谢指点.
作者: 韩一飞    时间: 2009-4-9 15:15
其实作一台BGA机器不是什么难事,现在市场上都有非常成熟的温控,买来自己花几个小时就可以组装一台,没有必要从最原始的电子线路作,这样很浪费时间,而且如果要作出满足市场需要的成熟产品估计要相当大的成本。
作者: 王利群    时间: 2009-4-9 15:19
本帖最后由 王利群 于 2009-4-9 16:04 编辑

对我来讲可能成本不会太高。平时工作有比较多的时候可以来设计。公司有PCB板供应商这个资源。只是想试试。能成功的话。大家得益。总得有人去投入。才能让更多的人省时省力。。对吧。。论坛给了我很大帮助。我也希望回报大家。。。。谢谢。。

另外重申明一点:我并不是想做出产品来给多大多在的市场。这个项目并不在我公司的开发计划之内。并不是为了经济目的。仅出于个人爱好与对论坛的回报(如果可能的话)。如果你有更好的想法与意见。请您发表出来。不要再争论时间多少与资金的问题。失败的话。我仅当锻炼自己的能力。反过来说,我相信自己能搞好。我也不是要性能多高多高。只是想比手动的8205好一点点。如果这个小东西都搞不定。那只能说(我们是不是要反省一下我们和国外产品差距有多大。还是我们的人与他们差距有多大。)。请大家相信我。支持我,多给我出点点子。我会尽力候
作者: 宇光    时间: 2009-4-9 16:13
大同江说的问题我已经观察到了,宏腾、卓茂BGA返修站的确如你所说在加热器附近,但我认为将电偶置于焊接元件才科学。至于你遇到的发热芯过热烧毁问题,实际上还是温控系统闭环反馈设置不合理,过冲严重(不知道是PID控制吗)。在工业上热电偶都是装在被控体上,不是加在加热器上,不然我们厂也用不着生产不同插深的热电偶了。
我很遗憾的是我离开测温仪表厂时,研发PID仪表的计划还只是停留在厂长的口头上,所以我现在说PID也多是纸上谈兵。
作者: 王利群    时间: 2009-4-9 16:20
不管是SSR输出,过零输出,移相调压输出。这些温度控制器,在市场上的价格从70块到1000块都有。3百多块也有移相调压,多段曲线的,但是那个只能用来控制保温箱之类的东西。如果是自己开发,是不是应该把精力放在弄清 ...
大同江 发表于 2009-4-9 13:03



可能我是做单片机设计的。如果能用单片机完成的东西。我都希望做到里面去。这样外围电路就可以简单话。能实现的功能也都让他实现。要不片子的资源就浪费了。同样的钱我愿意开发更多的功能在上面。主要是做这东西可以进一步提升自己的能力。谢谢大家支持。。
作者: 宇光    时间: 2009-4-9 17:02
的确当时间放长之后,这两种情况的结果是一样的。
我所以要将电偶放在焊接元件旁是希望提高系统反馈速度,更真实的反映曲线温度。
作者: 孤帆远影    时间: 2009-4-9 22:57
理想的状态
从热源出来到受热物体之间设置两到三个测温点,同步比较,控制加热源的温度和风速

呵呵
想想而已
作者: 孤帆远影    时间: 2009-4-9 22:59
用8205,配上PC410
把热电偶放在受热体上我也试过,几秒钟就感觉不对劲,立即断电。估计断迟了8205就挂了
作者: jackiexp    时间: 2009-4-10 01:53
最关键是你要精通焊接工艺的过程,不然做出的设备只能和一般的风枪一样。
算法上现在用的都参不多方式。
热电偶都是装在被控体是一定的,检测发热体温度达到控温的只能说是开闭控制。实际受热体的温度无法精确控制。
作者: 洋洋宝宝    时间: 2009-4-10 06:22
支持楼主!  早点开发出来
加油!
作者: 宇光    时间: 2009-4-10 08:49
SOP封装的MAX6675在哈尔滨的报价是35元,比较贵。
作者: 宇光    时间: 2009-4-10 09:06
作出产品和作出好产品差别大了,PID这种算法数十年前就有了,但现在大家还是不断地研究,新的算法不断被发布。别以为拿来现成的PID表加在自己的DIY BGA返修站就一切OK了,这和都有示波器,但有人天天要用,使用率特高,有人有了只是供着的情况一样。
PID的参数设定比较复杂,在系统中应用好是要有相当经验的,自整定很多时候是解决不了实际应用问题的。
作者: 王利群    时间: 2009-4-10 10:39
谢谢指点。在这之前我根本不知道什么PID。也是这里才学到的。我也不打算照少过来。

jackiexp 正解。

正在努力研究焊接工艺,望 jackiexp  多提供资料。
作者: yzz163    时间: 2009-4-10 11:32
MAX 的东西从来不便宜,但性能和便于写程序是最好的。

在OURAVR.COM上有很多做温控的资料(包括程序、电路图、PCB等一切资料)。

我的一点单片机知识也是在那里学习的。
作者: 宇光    时间: 2009-4-10 13:59
“一片红外砖,加热到一定温度关掉电源之后,起码还有10秒的时间温度是继续上升的”,这并非红外加热器独有,热风也是这样,而且我认为红外的在这一点上优于热风的。温度控制之所以难就在它的惯性大,相对而言步进电机就没什么惯性了。
作者: jackiexp    时间: 2009-4-10 14:03
实验太少了!一个PID的温控器加上风枪和控功器件不可能做到实际应用中的焊接过程。生产线上的焊接和开放式焊接工艺有很大的不同。
作者: yzz163    时间: 2009-4-10 14:29
PID 模糊 控制是“很古老”的算法了,关键是掌握和运用。有几个人?

这就是为何“很古老”的还是有人不断的学习、研究、改进。不仅是在温度控制领域,在所有的自动控制设备里都有 PID、 模糊控制等应用。

如果在短时间内,我们能做出一个基本满足需求(BGA)的温控器就应该是很了不起的事了。
作者: 我爱显卡    时间: 2009-4-10 17:13
我在想在测温方面有没有红外的传感器可以用的,不要总考虑是红外加热还是风加热,其实不都是给芯片加热,主要的是很好的控制温度!
作者: 天成电玩    时间: 2009-4-11 00:08
首先我的理解:从bga[理想!]焊接的曲线看,其中最重要的是中间环节,也就是保温阶段!!!然后迅速加温,锡球融化,然后又到保温再冷却。
我实际上焊接过程是:单独一套测温,把它的探头-可靠的-放置-到最接近被拆的bga旁,最接近的位置,开始充分的下加热,到达保温温度,严格监控保温温度!充分的保温,时间稍长点。最后8205上加热焊接,同时观察控制温度上限,很快就能搞定,焊接时间很短。
其实严格监控保温温度是最主要的!这个植锡的时候都能体会到,焊锡融化也就最多十几秒钟。镕锡与保温的时间比例大概1/10或1/20或更大些,这个和bga的焊接面积的大小成比例的。
我想说的是,通过两个电偶,能够严格控制住保温阶段的恒定温度(这个可以上下同时加热,也可单独下加热),同时也能够监测到加热芯到bga周围的温差,用这温差和升温时间做条件控制,能做到理想焊接,也能容易实现。也比靠单电偶控制热风芯的精度要求低些。
比如:单独充分下加热加热到保温,有铅的120度恒定(或无铅的160),开上加热后维持到120度,这时两个电偶就会有温差,利用这个差调整上加热就能精确焊接,然后再到120度,然后散热。
呵呵有点乱,个人理解,成品焊台我也没看到实物太贵也买不起,不对的地方勿笑。
作者: 宇光    时间: 2009-4-11 08:54
本帖最后由 宇光 于 2009-4-11 09:07 编辑

目前的可控硅相控并不是严格意义上的线性控制,是离散控制,只是近似线性。
“调整的速度足够快,几乎没有惯性”,热风加热也是有惯性的。加热元件的惯性不会因为有了控制系统而消失的,调节的过快,系统会处于振荡状态。这就是控制系统的两难之处,好的控制是找到平衡点,PID比较好的解决了这个问题,所以才大行其道。
“一个PID的温控器加上风枪和控功器件不可能做到实际应用中的焊接过程。生产线上的焊接和开放式焊接工艺有很大的不同。”,jackiexp是不是只是要强调返修工作站没法等同于回流炉(隧道炉)?
作者: 王利群    时间: 2009-4-11 11:06
本帖最后由 王利群 于 2009-4-11 11:08 编辑

TU1.JPG
登录/注册后看高清大图
简单的画了一个画了一个草图。大家先帮改改。收集意见后。再完整一下。附件请用altium summer08 软件可以打开。AD6。9应该也可以打开。

ATK8205.SchDoc

453 KB, 下载次数: 35, 下载积分: 下载分 -2 分, 下载 1 次


作者: FTONYI    时间: 2009-4-11 14:28
哎,想做一个好的BGA拆焊系统.好的加热材料是个问题.
作者: 无效的用户名    时间: 2009-4-14 16:59
看了大家的贴子  真是无地自容啊。这才知道什么叫知识
作者: 王利群    时间: 2009-4-15 11:07
培训今天要开始了。这事先搁一下。会继续关注学习。
作者: yzz163    时间: 2009-4-17 22:45
转发一个串口协议。

如果大家都类似开源模式,每人完成一部分,就可将工作量大大降低。也会更快的完成项目。

[OurDev开源充电器] 上下位机通讯协议设计:
http://www.ouravr.com/bbs/bbs_content_all.jsp?bbs_sn=855171
我参考该资料完成了相关上、下位机的串口通信协议代码和调试。
作者: yzz163    时间: 2009-7-1 16:38
韩一飞 开发了 BGA曲线监控系统:
http://www.chinafix.com.cn/thread-101925-1-1.html
你的单片机若能用AL808通讯协议就可实现同他的上位机连机了。
AL808通讯协议我放在了18楼。
作者: 铁牛维修中心    时间: 2009-7-11 11:54
看了楼上大师们的讨论,我提个建议,不知是否可行,风口设一个温度感应防止过热,焊接处设一个温度感应实际温度,两个温度来控制能行不?
作者: yzz163    时间: 2009-7-11 12:01
准备自己开发个开源的BGA温度控制系统。
http://www.chinafix.com.cn/thread-121130-1-1.html
作者: 兄弟电脑电器    时间: 2009-8-25 18:43
我只能提供机械部分
其它的就不行了
作者: 精密数控    时间: 2009-9-23 10:05
本帖最后由 精密数控 于 2009-9-23 10:14 编辑

支持楼主强作. 没下文了?   我也正在做部分. 先上个电路PCB图
作者: 精密数控    时间: 2009-9-23 10:16
本帖最后由 精密数控 于 2009-9-23 10:22 编辑

PCB设计图如下

功能描:
1. 16路温度检测(K型)
2. 2路附加温度检测(PT1000)
3. 8路固态继电器SSR驱动
4. 12路双向可控硅(TRIAC)触发(不需要SSR,成本低)
5. PID控制(软件)
6. 6路220V 5A继电器控制
7. 8路PWM输出(带24V放大驱动)
8. Modbus(一路RS232,一路RS485)
大概这些,软件正在写.





欢迎光临 迅维网 (https://www.chinafix.com/) Powered by Discuz! X3.4