Hi
finally found the missing step issue (a stupid programing error).
so now head position no more drift
so i will try to build a pcb today ...
Best regard
Controller Board for DIY Pick place Project
Moderators: adafruit_support_bill, adafruit
Please be positive and constructive with your questions and comments.
- alphatronique
- Posts: 231
- Joined: Fri Jun 25, 2010 8:30 am
- alphatronique
- Posts: 231
- Joined: Fri Jun 25, 2010 8:30 am
Re: Controller Board for DIY Pick place Project
Hi
assembly of 48 closely spaced resistor whit view of GUI and close-up on head / pcb ..
http://www.youtube.com/watch?v=MOtb3EI0DEg
Best regard
assembly of 48 closely spaced resistor whit view of GUI and close-up on head / pcb ..
http://www.youtube.com/watch?v=MOtb3EI0DEg
Best regard
- tastewar
- Posts: 408
- Joined: Thu Mar 17, 2011 10:16 am
Re: Controller Board for DIY Pick place Project
Very cool!!
- alphatronique
- Posts: 231
- Joined: Fri Jun 25, 2010 8:30 am
Re: Controller Board for DIY Pick place Project
Detail of GUI operation
from cad system to production in <3 minute
whit PCB panelization in machine software whit PCB preview :cheers:
.ini file hold feeder pick point and last feeder setting on machine
http://www.youtube.com/watch?v=4VNK7XBh_ls
Best regard
from cad system to production in <3 minute
whit PCB panelization in machine software whit PCB preview :cheers:
.ini file hold feeder pick point and last feeder setting on machine
http://www.youtube.com/watch?v=4VNK7XBh_ls
Best regard
-
- Posts: 43
- Joined: Tue Nov 24, 2009 5:59 am
Re: Controller Board for DIY Pick place Project
Dear Alphatronique
Would you like to write proper usable software for the MDC pick and place?
Would you like to write proper usable software for the MDC pick and place?
- alphatronique
- Posts: 231
- Joined: Fri Jun 25, 2010 8:30 am
Re: Controller Board for DIY Pick place Project
Hi
i knot some one that have make it ,but it also redo most of mechanical
and it on older machine
problem whit new machine is that it much more complex
and reply on vision for "fix" mechanical defect
my old zevatech was build like a thank since i born to be blind machine
so i very repeatable but rebuilt it today will really expensive
and i not knot how MDC layer will react to a hack of it current machine ?
but on the good news side i really think to make a kind of universal
modular controller that may fit many machine
but this will later once i will finish to integrated vision to my software
and fully defogged it , is sill have some small issue to fix before make it "commercial" grade
p.s. last night i have increase speed by 30% so 1300 part /hour whit feeder at 12" from placement zone
Best regard
i knot some one that have make it ,but it also redo most of mechanical
and it on older machine
problem whit new machine is that it much more complex
and reply on vision for "fix" mechanical defect
my old zevatech was build like a thank since i born to be blind machine
so i very repeatable but rebuilt it today will really expensive
and i not knot how MDC layer will react to a hack of it current machine ?
but on the good news side i really think to make a kind of universal
modular controller that may fit many machine
but this will later once i will finish to integrated vision to my software
and fully defogged it , is sill have some small issue to fix before make it "commercial" grade
p.s. last night i have increase speed by 30% so 1300 part /hour whit feeder at 12" from placement zone
Best regard
- alphatronique
- Posts: 231
- Joined: Fri Jun 25, 2010 8:30 am
Re: Controller Board for DIY Pick place Project
HI
during long week-end i have fix\add
1-) move from old pm360 machine to a newer 460 machine whit ATC ,add the cognex camera to machines
and build 5 controller card so now all my machine have the new controller (ya i buy 2 more machine few week back)
2-) ADD auto tool changer support ,for now we will only handle first 5 bit ,bit #6 pose problem whit negative coordinate
3-) bootloader in firm and software
4-) fix cut-tape feeder operation on software
5-) handle part rotation in 1.7 deg increment , this still need mechanical calibration
6-) begin to work whit machinist for make my own nozzle ,CAD draying was done waiting for first prototype
7-) cognex vision system integration in software
ok for vision software was ready but still have lot of work to put on optic side
i have problem whit lighting ,mirror reflection and gosh image ,uniform focus ,etc etc
will need front surface mirror and box for control illumination and
probably help for some one that better that me in optic ,so if you may help me not be shy
on image above RED circle was the machine bit position ,green cross was calculate part center
and text on top was data send trough rs232 to pc software
in this case "X:300.666 Y:410.057 T:-3.830 S:44.391"
on PC side it do ...
X = ((X - 240) / 21) and Y = ((Y - 320) / 21) "21" was scale value for pixel to mm
T = rotation in degree
S = score < 40 vision result was considered as void
this will convert in +/- value based on center position
in this example part was X=300.6 - 240 = 60.6 \\ Y= 410.0 - 320 = 90.0 pixel off center
whit -3.8 degre rotation scale value will be ~21
x=60.6 / 21 = 2.88mm
y=90.0 / 20 = 4.28mm
problem was that this was a still image take whit perfect illumination and focus on stopped machine
but on a working machine it hard to make it reliable and handle variable lighting condition
Best regard
during long week-end i have fix\add
1-) move from old pm360 machine to a newer 460 machine whit ATC ,add the cognex camera to machines
and build 5 controller card so now all my machine have the new controller (ya i buy 2 more machine few week back)
2-) ADD auto tool changer support ,for now we will only handle first 5 bit ,bit #6 pose problem whit negative coordinate
3-) bootloader in firm and software
4-) fix cut-tape feeder operation on software
5-) handle part rotation in 1.7 deg increment , this still need mechanical calibration
6-) begin to work whit machinist for make my own nozzle ,CAD draying was done waiting for first prototype
7-) cognex vision system integration in software
ok for vision software was ready but still have lot of work to put on optic side
i have problem whit lighting ,mirror reflection and gosh image ,uniform focus ,etc etc
will need front surface mirror and box for control illumination and
probably help for some one that better that me in optic ,so if you may help me not be shy
on image above RED circle was the machine bit position ,green cross was calculate part center
and text on top was data send trough rs232 to pc software
in this case "X:300.666 Y:410.057 T:-3.830 S:44.391"
on PC side it do ...
X = ((X - 240) / 21) and Y = ((Y - 320) / 21) "21" was scale value for pixel to mm
T = rotation in degree
S = score < 40 vision result was considered as void
this will convert in +/- value based on center position
in this example part was X=300.6 - 240 = 60.6 \\ Y= 410.0 - 320 = 90.0 pixel off center
whit -3.8 degre rotation scale value will be ~21
x=60.6 / 21 = 2.88mm
y=90.0 / 20 = 4.28mm
problem was that this was a still image take whit perfect illumination and focus on stopped machine
but on a working machine it hard to make it reliable and handle variable lighting condition
Best regard
- Attachments
-
- vision.JPG (36.53 KiB) Viewed 4003 times
- alphatronique
- Posts: 231
- Joined: Fri Jun 25, 2010 8:30 am
Re: Controller Board for DIY Pick place Project
Hi
this was ghost effect caused by reflection on mirror
so i just order 38mm front surface mirror from Edmund Optics
think i finally found right camera distance and lens set that work well
it have to got resolution for fit a 100 pin TQFP and a soic-8 whit same optic ..
that explain wly expensive machine use 2 camera whit 2 set of lens...
Best regard
this was ghost effect caused by reflection on mirror
so i just order 38mm front surface mirror from Edmund Optics
think i finally found right camera distance and lens set that work well
it have to got resolution for fit a 100 pin TQFP and a soic-8 whit same optic ..
that explain wly expensive machine use 2 camera whit 2 set of lens...
Best regard
- Attachments
-
- TQFP100_ghost.jpg (162.19 KiB) Viewed 3997 times
- alphatronique
- Posts: 231
- Joined: Fri Jun 25, 2010 8:30 am
Re: Controller Board for DIY Pick place Project
Hi
look that IC whit marking on bottom was not may confuse system and see it as a pin ...
so seem that i will need to work again on the vision system programing
red circle = machine nozzle
big green cross = calculated part center
small green cross = IC pin found in image doing mean of all pin coordinate and rotation = part center
for now i not find better way to have one programing do all
a easy way may teach every single part but i what to keep it simple and one thing do all
or at least as more as possible
the good thing is image resolution was fine whit this setting so it may have hope
look that IC whit marking on bottom was not may confuse system and see it as a pin ...
so seem that i will need to work again on the vision system programing
red circle = machine nozzle
big green cross = calculated part center
small green cross = IC pin found in image doing mean of all pin coordinate and rotation = part center
for now i not find better way to have one programing do all
a easy way may teach every single part but i what to keep it simple and one thing do all
or at least as more as possible
the good thing is image resolution was fine whit this setting so it may have hope
- Attachments
-
- SOIC-8.JPG (16.08 KiB) Viewed 3997 times
- alphatronique
- Posts: 231
- Joined: Fri Jun 25, 2010 8:30 am
Re: Controller Board for DIY Pick place Project
HI
this is how now look the .ini file ,so here all major machine config was stocked
i build a box for camera so i will able to test it back vision part of the software
[Settings]
CoordUnit=128 ;for old pro format
SpeedSlow=1000 ;speed value for slow
SpeedMed=4000 ;speed value for medium
SpeedFast=8000 ;speed value for fast
LaneMaxX=361.00 ;in mm
LaneMaxY=510.00 ;in mm
TrickX=309.00 ;in mm ATC Tes PAD
TrickY=127.00 ;in mm ATC Tes PAD
CameraX=319.00 ;in mm
CameraY=171.00 ;in mm
CameraPpmmX=21.00 ;in ppmm (pixels per mm)
CameraPpmmY=21.00 ;in ppmm (pixels per mm)
JunkX=0.00 ;in mm Junk bin for reject Vision part
JunkY=0.00 ;in mm Junk bin for reject Vision part
PCBZoneX=54.80 ;in mm PCB 0.0 cordinate
PCBZoneY=145.80 ;in mm
PCBZoneWidth=300.00 ;in mm
PCBZoneHeight=300.00 ;in mm
CameraTimeout=200 ;in ms
TakePlaceTimeout=2000 ;in ms
MotorCheckInterval=250 ;in ms Motor position pooling delay
TakePlaceCheckInterval=100 ;in ms
CurrentBit=-2 ;-2=no info, -1=unknown bit, 0=no bit, 1-5=bit number
COMPort=1 ; Modbus
CameraPort=2 ; Cognex camera port
EnableVision=1 ;set to non-zero to enable
DebugMode=1 ;set to non-zero to enable
[Default Part Components] ;lesser number has higher priority
1=AD8132ARZ,SOP8P ;Assing AD8132ARZ to SOP8P pakage
2=R*A,0805 ;Assing any Resistor finish by "A" to 0805 pakage
3=R*B,0603
4=C*A,0805 ;Assing any CAP finish by "A" to 0805 pakage
5=C*B,0603
[Default F1 Lane Coordinates] ;all in mm (Default pick point for feeder)
X1=15.70
Y1=34.90
X2=37.20
Y2=34.90
X3=58.70
Y3=34.90
X4=80.20
Y4=34.90
X5=101.70
Y5=34.90
X6=123.20
Y6=34.90
[Default F2 Lane Coordinates] ;all in mm
X1=170.70
Y1=34.90
X2=192.20
Y2=34.90
X3=231.70
Y3=34.90
X4=235.20
Y4=34.90
X5=256.20
Y5=34.90
X6=278.20
Y6=34.90
[Default L1 Lane Coordinates] ;all in mm
X1=1.40
Y1=151.30
X2=1.40
Y2=172.80
X3=1.40
Y3=194.30
X4=1.40
Y4=215.80
X5=1.40
Y5=237.30
X6=1.40
Y6=258.80
[Default L2 Lane Coordinates] ;all in mm
X1=1.40
Y1=306.30
X2=1.40
Y2=327.80
X3=1.40
Y3=349.30
X4=1.40
Y4=370.80
X5=1.40
Y5=392.30
X6=1.40
Y6=413.80
[Default B1 Lane Coordinates] ;all in mm
X1=12.80
Y1=505.10
X2=34.30
Y2=505.10
X3=55.80
Y3=505.10
X4=77.30
Y4=505.10
X5=98.80
Y5=505.10
X6=120.30
Y6=505.10
[Default B2 Lane Coordinates] ;all in mm
X1=167.80
Y1=505.10
X2=189.30
Y2=505.10
X3=210.80
Y3=505.10
X4=232.30
Y4=505.10
X5=253.80
Y5=505.10
X6=275.30
Y6=505.10
[Default R1 Lane Coordinates] ;all in mm
X1=356.85
Y1=145.50
X2=356.85
Y2=159.50
X3=356.85
Y3=173.50
X4=356.85
Y4=187.50
X5=356.85
Y5=201.50
X6=356.85
Y6=215.50
X7=356.85
Y7=229.50
X8=356.85
Y8=243.50
X9=356.85
Y9=257.50
X10=356.85
Y10=271.50
[Default R2 Lane Coordinates] ;all in mm
X1=356.85
Y1=300.50
X2=356.85
Y2=314.50
X3=356.85
Y3=328.50
X4=356.85
Y4=342.50
X5=356.85
Y5=356.50
X6=356.85
Y6=370.50
X7=356.85
Y7=384.50
X8=356.85
Y8=398.50
X9=356.85
Y9=412.50
X10=356.85
Y10=426.50
[ATC] ;all in mm ATC cordinate
PADX=307.00
PADY=127.00
AX=327.15
AY=116.35
BX=327.00
BY=91.50
CX=327.00
CY=66.45
DX=326.90
DY=41.50
EX=326.90
EY=16.45
[Components] ;format = {Name}={Bit},{Speed},{WidthMm},{HeightMm}
0603=2,Slow,16,8
0805=1,Fast,20,11
1608=1,Fast,16,8
2125=1,Medium,21,25
3216=1,Medium,32,16
MLF16W=1,Medium,16,8
MLF4W=2,Medium,16,8
MLF8W=1,Medium,16,8
QFN=3,Slow,80,200
SOP16P=3,Medium,120,60
SOP8P=3,Medium,80,60
SOT23=5,Medium,20,16
[Part Types] ;format = {Name}={NeedVision}
3000=1 ; 1= vison enable on that part
744066100=0
AD8132ARZ=0
AD8137YR=0
ADC122S655=0
AT45DB161D=0
ATMEGA128=0
ATMEGA644-20AU=0
C100GA=0
C103GA=0
C104GA=0
R102A=0
R102B=0
R103A=0
R104A=0
R104B=0
R120A=0
V9MLA0805=0
X10.00D=0
X12.00D=0
X14.745D=0
X25.00D=0
X8.00D=0
this is how now look the .ini file ,so here all major machine config was stocked
i build a box for camera so i will able to test it back vision part of the software
[Settings]
CoordUnit=128 ;for old pro format
SpeedSlow=1000 ;speed value for slow
SpeedMed=4000 ;speed value for medium
SpeedFast=8000 ;speed value for fast
LaneMaxX=361.00 ;in mm
LaneMaxY=510.00 ;in mm
TrickX=309.00 ;in mm ATC Tes PAD
TrickY=127.00 ;in mm ATC Tes PAD
CameraX=319.00 ;in mm
CameraY=171.00 ;in mm
CameraPpmmX=21.00 ;in ppmm (pixels per mm)
CameraPpmmY=21.00 ;in ppmm (pixels per mm)
JunkX=0.00 ;in mm Junk bin for reject Vision part
JunkY=0.00 ;in mm Junk bin for reject Vision part
PCBZoneX=54.80 ;in mm PCB 0.0 cordinate
PCBZoneY=145.80 ;in mm
PCBZoneWidth=300.00 ;in mm
PCBZoneHeight=300.00 ;in mm
CameraTimeout=200 ;in ms
TakePlaceTimeout=2000 ;in ms
MotorCheckInterval=250 ;in ms Motor position pooling delay
TakePlaceCheckInterval=100 ;in ms
CurrentBit=-2 ;-2=no info, -1=unknown bit, 0=no bit, 1-5=bit number
COMPort=1 ; Modbus
CameraPort=2 ; Cognex camera port
EnableVision=1 ;set to non-zero to enable
DebugMode=1 ;set to non-zero to enable
[Default Part Components] ;lesser number has higher priority
1=AD8132ARZ,SOP8P ;Assing AD8132ARZ to SOP8P pakage
2=R*A,0805 ;Assing any Resistor finish by "A" to 0805 pakage
3=R*B,0603
4=C*A,0805 ;Assing any CAP finish by "A" to 0805 pakage
5=C*B,0603
[Default F1 Lane Coordinates] ;all in mm (Default pick point for feeder)
X1=15.70
Y1=34.90
X2=37.20
Y2=34.90
X3=58.70
Y3=34.90
X4=80.20
Y4=34.90
X5=101.70
Y5=34.90
X6=123.20
Y6=34.90
[Default F2 Lane Coordinates] ;all in mm
X1=170.70
Y1=34.90
X2=192.20
Y2=34.90
X3=231.70
Y3=34.90
X4=235.20
Y4=34.90
X5=256.20
Y5=34.90
X6=278.20
Y6=34.90
[Default L1 Lane Coordinates] ;all in mm
X1=1.40
Y1=151.30
X2=1.40
Y2=172.80
X3=1.40
Y3=194.30
X4=1.40
Y4=215.80
X5=1.40
Y5=237.30
X6=1.40
Y6=258.80
[Default L2 Lane Coordinates] ;all in mm
X1=1.40
Y1=306.30
X2=1.40
Y2=327.80
X3=1.40
Y3=349.30
X4=1.40
Y4=370.80
X5=1.40
Y5=392.30
X6=1.40
Y6=413.80
[Default B1 Lane Coordinates] ;all in mm
X1=12.80
Y1=505.10
X2=34.30
Y2=505.10
X3=55.80
Y3=505.10
X4=77.30
Y4=505.10
X5=98.80
Y5=505.10
X6=120.30
Y6=505.10
[Default B2 Lane Coordinates] ;all in mm
X1=167.80
Y1=505.10
X2=189.30
Y2=505.10
X3=210.80
Y3=505.10
X4=232.30
Y4=505.10
X5=253.80
Y5=505.10
X6=275.30
Y6=505.10
[Default R1 Lane Coordinates] ;all in mm
X1=356.85
Y1=145.50
X2=356.85
Y2=159.50
X3=356.85
Y3=173.50
X4=356.85
Y4=187.50
X5=356.85
Y5=201.50
X6=356.85
Y6=215.50
X7=356.85
Y7=229.50
X8=356.85
Y8=243.50
X9=356.85
Y9=257.50
X10=356.85
Y10=271.50
[Default R2 Lane Coordinates] ;all in mm
X1=356.85
Y1=300.50
X2=356.85
Y2=314.50
X3=356.85
Y3=328.50
X4=356.85
Y4=342.50
X5=356.85
Y5=356.50
X6=356.85
Y6=370.50
X7=356.85
Y7=384.50
X8=356.85
Y8=398.50
X9=356.85
Y9=412.50
X10=356.85
Y10=426.50
[ATC] ;all in mm ATC cordinate
PADX=307.00
PADY=127.00
AX=327.15
AY=116.35
BX=327.00
BY=91.50
CX=327.00
CY=66.45
DX=326.90
DY=41.50
EX=326.90
EY=16.45
[Components] ;format = {Name}={Bit},{Speed},{WidthMm},{HeightMm}
0603=2,Slow,16,8
0805=1,Fast,20,11
1608=1,Fast,16,8
2125=1,Medium,21,25
3216=1,Medium,32,16
MLF16W=1,Medium,16,8
MLF4W=2,Medium,16,8
MLF8W=1,Medium,16,8
QFN=3,Slow,80,200
SOP16P=3,Medium,120,60
SOP8P=3,Medium,80,60
SOT23=5,Medium,20,16
[Part Types] ;format = {Name}={NeedVision}
3000=1 ; 1= vison enable on that part
744066100=0
AD8132ARZ=0
AD8137YR=0
ADC122S655=0
AT45DB161D=0
ATMEGA128=0
ATMEGA644-20AU=0
C100GA=0
C103GA=0
C104GA=0
R102A=0
R102B=0
R103A=0
R104A=0
R104B=0
R120A=0
V9MLA0805=0
X10.00D=0
X12.00D=0
X14.745D=0
X25.00D=0
X8.00D=0
- alphatronique
- Posts: 231
- Joined: Fri Jun 25, 2010 8:30 am
Re: Controller Board for DIY Pick place Project
Hi
wow new camera bod work really nice
i use now optic grade front surface mirror ,ok it bit expensive but no more reflection
and new lighting also help allot , it test also a new algo for TQFP i now try to find i corner
then extract center based on corner position and rotation
this solve i part my lens problem since camera only need to see part corner not the whole part
so whit same lens i make TQFP-100 to 0402 resistor ,i setup new box\lens for "see" ~25mm x ~30mm
in this image calculated center was on a pin so it not to bad for a first try
wow new camera bod work really nice
i use now optic grade front surface mirror ,ok it bit expensive but no more reflection
and new lighting also help allot , it test also a new algo for TQFP i now try to find i corner
then extract center based on corner position and rotation
this solve i part my lens problem since camera only need to see part corner not the whole part
so whit same lens i make TQFP-100 to 0402 resistor ,i setup new box\lens for "see" ~25mm x ~30mm
in this image calculated center was on a pin so it not to bad for a first try
- Attachments
-
- QFP_Corner.JPG (63.22 KiB) Viewed 3964 times
- alphatronique
- Posts: 231
- Joined: Fri Jun 25, 2010 8:30 am
Re: Controller Board for DIY Pick place Project
Hi
whit few mod i have something working now
centering was right on bouldzaill
need to implement that change on pc side software
whit few mod i have something working now
centering was right on bouldzaill
need to implement that change on pc side software
- Attachments
-
- TQFP_100_bonzail.JPG (52.68 KiB) Viewed 3963 times
- alphatronique
- Posts: 231
- Joined: Fri Jun 25, 2010 8:30 am
Re: Controller Board for DIY Pick place Project
Hi
base machine function was now really close to be ready for production (less vision)
so i will release file format and modbus implementation
for now seem that future of the project will be commercial way ,i put lot of money on this hardware
so hardware / software will be not released to source level
but instead the hardware will sold to fair cost and software supplied for free
since modbus protocol and file format was public any one may make it own hardware specific to it machine
first batch on prototype was a viable for beta tester on ebay now .. 260794241847
so in my future post here i will focus only on vision system , i will as i do in the past put public the .job file
so any one will be take advantage of my work on this field ,so vision part will remain open source
Best regard
base machine function was now really close to be ready for production (less vision)
so i will release file format and modbus implementation
for now seem that future of the project will be commercial way ,i put lot of money on this hardware
so hardware / software will be not released to source level
but instead the hardware will sold to fair cost and software supplied for free
since modbus protocol and file format was public any one may make it own hardware specific to it machine
first batch on prototype was a viable for beta tester on ebay now .. 260794241847
so in my future post here i will focus only on vision system , i will as i do in the past put public the .job file
so any one will be take advantage of my work on this field ,so vision part will remain open source
Best regard
- Attachments
-
- Protocol_doc.zip
- (68.26 KiB) Downloaded 258 times
-
- Posts: 43
- Joined: Tue Nov 24, 2009 5:59 am
Re: Controller Board for DIY Pick place Project
It's pretty cool how a one-guy operation has better looking (and better performaing, i bet) bottom camera support than a machine costing nearly $30k from another well-known manufacturer.
What are you using for computer vision? OpenCV, or something custom?
What are you using for computer vision? OpenCV, or something custom?
- alphatronique
- Posts: 231
- Joined: Fri Jun 25, 2010 8:30 am
Re: Controller Board for DIY Pick place Project
Hi
first i not totally alone on that ,i have hired staff that do pc side application programing ,and part of firmware
but on the vision system i was alone ..
i use cognex insight camera ,if you googel insight + pick place you will find that it used on many of hight-end machine
the fun thing whit cognex it that i same "algo" for pc version and for standalone one
so insight camera was all build in system so camera + vision processor in same package
you may found it on ebay for <1000$ (i missing one last week for 200$) new that camera cost ~5000$
once programed camera do thing alone ,in my case i program it for output on it rs232 part center coordinate + rotation
so did my vision system was better that other ? that hard to tell and varies whit what you expect
most machine try to find bend pin or mis orientation chip etc etc , on my side i focus only on 1 thing
fast turn around prototype production whit very minimal machine programing , and keep odd part like connector to be solder by hand
so vision do only part centering whit no or very minimal part definition programing
for do this i find some trick
1-) For TQFP/QFN i do 2 image recondition on 2 pin on a corner and permit image scaling of 50% and rotation of 90%
so this permit to find 2 opposite corner in the image then do mean of coordinate and this got me part center
whit this i got precision of ~0.04mm on 0.5mm pitch
2-) for SOIC i do same but whit only 1 pin on a corner ,i lost some precision but most of time SOIC was bigger pitch
for finish i looking now for find a pc side solution since i use only image/pastern match it make software requirement more simple ,i looked the open-cv but it on c/c++ and my good pc programmer only do delphi
so i still look for find something cogenx was good but expensive to got new ....
and cannot rely on used marked for my goal ..
first i not totally alone on that ,i have hired staff that do pc side application programing ,and part of firmware
but on the vision system i was alone ..
i use cognex insight camera ,if you googel insight + pick place you will find that it used on many of hight-end machine
the fun thing whit cognex it that i same "algo" for pc version and for standalone one
so insight camera was all build in system so camera + vision processor in same package
you may found it on ebay for <1000$ (i missing one last week for 200$) new that camera cost ~5000$
once programed camera do thing alone ,in my case i program it for output on it rs232 part center coordinate + rotation
so did my vision system was better that other ? that hard to tell and varies whit what you expect
most machine try to find bend pin or mis orientation chip etc etc , on my side i focus only on 1 thing
fast turn around prototype production whit very minimal machine programing , and keep odd part like connector to be solder by hand
so vision do only part centering whit no or very minimal part definition programing
for do this i find some trick
1-) For TQFP/QFN i do 2 image recondition on 2 pin on a corner and permit image scaling of 50% and rotation of 90%
so this permit to find 2 opposite corner in the image then do mean of coordinate and this got me part center
whit this i got precision of ~0.04mm on 0.5mm pitch
2-) for SOIC i do same but whit only 1 pin on a corner ,i lost some precision but most of time SOIC was bigger pitch
for finish i looking now for find a pc side solution since i use only image/pastern match it make software requirement more simple ,i looked the open-cv but it on c/c++ and my good pc programmer only do delphi
so i still look for find something cogenx was good but expensive to got new ....
and cannot rely on used marked for my goal ..
Please be positive and constructive with your questions and comments.