CNCzone.com-The Largest Machinist Community on the net!



Home Page Mark Forums Read Today's Posts My Replies Classifieds Reviews Photo Gallery Web Links Share Files Advertise With Us Ad List
Go Back   CNCzone.com-The Largest Machinist Community on the net! > Electronics > General Electronics Discussion


General Electronics Discussion Discuss basic electronics, power supplies and anything else electronic related here.


This forum is sponsored by:

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Ban this user!
Old 12-16-2007, 01:23 PM
guru_florida's Avatar  
Join Date: Nov 2007
Location: United States
Age: 36
Posts: 257
guru_florida is on a distinguished road
FPGA based cnc controller / routing pcb

I am just finishing an FPGA design. It's a basic board with sram, flash rom, sd card, sound codec, +more. It will run a version on ucLinux. It is primarily intended for something else, but I was thinking of using it later as a reference design for cnc control.

If you were to design a dream board for cnc that includes the G-code interpreter and all...would it be with an FPGA (perhaps running linux) or would a cheaper solutions such as an Atmel AVR be more suiting. Maybe a blackfin? The nice thing about the FPGA over AVR is being able to design the stepper or servo PWM in hardware. This is purely opinion but I am interested in a good brainstorming discussion on this.

Initially my cnc machine is controlled by laptop and a amplifier board i bought off ebay. But eventually I would like my machine to be more self contained. I would like to be able to send files to it over the network or usb, and be able to recall programs saved to its memory. I also want a joystick type remote that has digital rotary dials for manually moving the machine and digital read out. All possible with the board I am making.

Second, for those routing pros: In my current FPGA design I have a pcb routing conundrum(??). It's a 4 layer board and I have 3 power supplies. 3v, 2.5 and 1.2. The 3v is is the primarily used supply so it takes the power plane. 1.2v is FPGA core supply only. 2.5v is Vaux provided by a linear reg and will probably be disabled in most of my applications. Good practise tell me not to split the ground and power planes with traces. But I also want to keep my 1.2v (and my Vaux if possible) lines short. So do I route on the power plane my other supplies or route these supplies on the signal plane? I am leaning towards routing them on the bottom layer even though I have them routed on the power planes in the pics. In any case, I will put bypass caps on each 1.2v pin so this should supply the fpga core well with a low impedance source. (bypass caps are not all there in the pics.)

In my pic I dont like how the power lines split the power plan down the middle...if it happened to be at the edge of the board I wouldnt think much of it...but I am thinking of current loop distances.

I have read a really enlightening book on high speed pcb design but I guess I am still a little on the fence.

Colin
Attached Thumbnails
Click image for larger version

Name:	board3d.gif‎
Views:	205
Size:	111.7 KB
ID:	48683   Click image for larger version

Name:	power.gif‎
Views:	149
Size:	16.2 KB
ID:	48684   Click image for larger version

Name:	top-bottom.gif‎
Views:	203
Size:	48.3 KB
ID:	48685  
Reply With Quote

  #2   Ban this user!
Old 12-16-2007, 02:22 PM
Xerxes's Avatar  
Join Date: Sep 2004
Location: Finland
Posts: 1,162
Xerxes is on a distinguished road

Layout looks quite pro to me. Some good design rules:
http://circuitcalculator.com/wordpre...ed-pcb-design/

Are you planning to have these machine assembled? If yes, then it is probably cheaper to use only single side SMD's despite of larger PCB area.
Reply With Quote

  #3   Ban this user!
Old 12-16-2007, 05:28 PM
guru_florida's Avatar  
Join Date: Nov 2007
Location: United States
Age: 36
Posts: 257
guru_florida is on a distinguished road

Thanks for the feedback. This is more of a reference design then any particular use, so I am going low quantity and self assembly. When I go larger qty I would probably be using smaller area. I also really wanted to use the BGA FPGA so that I can go up to 1M gate count if I ever needed it, but the risk of having a problem under the BGA and not knowing if it is design flaw or solder flaw didnt appeal to me. I may still go BGA later when I know the design is good.

In my design my expansion bus is really the Flash ROM signals plus a few others like system clock, more CS lines, etc. but I have all the signals routed to the expansion header then to the flash rom to eliminate making any unintentional antennas or requiring termination.

So you dont think those two thick lines splitting my power plane nearly in half will cause any problems?

C
Reply With Quote

  #4   Ban this user!
Old 12-17-2007, 12:03 AM
guru_florida's Avatar  
Join Date: Nov 2007
Location: United States
Age: 36
Posts: 257
guru_florida is on a distinguished road

Oh yes, also, what pcb house do you use?

Thanks,
C
Reply With Quote

  #5   Ban this user!
Old 12-17-2007, 07:18 AM
Xerxes's Avatar  
Join Date: Sep 2004
Location: Finland
Posts: 1,162
Xerxes is on a distinguished road

Connect power layer by few traces across the split on other layers. Traces don't have to be thick because only high frequencies will pass thru the smallest inductance path. DC will go around the split on the smallest resistance path.

In the last order I used Pcbcart.
Reply With Quote

Sponsored Links
  #6   Ban this user!
Old 12-17-2007, 09:24 AM
guru_florida's Avatar  
Join Date: Nov 2007
Location: United States
Age: 36
Posts: 257
guru_florida is on a distinguished road

I did some rearranging last night because I couldnt sleep. I managed to get those power rails as poly pours on the signal layers. I think this looks the best upon reflection. It provides a low resistive path to the fpga, I will have decouping caps also.

Thanks,
C
Reply With Quote

  #7   Ban this user!
Old 01-05-2008, 03:05 AM
 
Join Date: Nov 2005
Location: Latvia
Posts: 72
Episs is on a distinguished road

Reading your tread it look like you want to make similar functionality cnc controller board, have a look at my tread.

building FPGA motion controller
past two months there are no new info, because my new Cyclone III in 256BGA package board is not ready yet.

What fpga processor core will you use ?? is it MicroBlaze™ ?
and did you thought about software, what features will it have and so on.. ???

I counted that your board has 60pin connector, could be enough for controller, but you never know until you start to build it and then you will see how much you really need.
Reply With Quote

  #8   Ban this user!
Old 01-07-2008, 01:44 PM
guru_florida's Avatar  
Join Date: Nov 2007
Location: United States
Age: 36
Posts: 257
guru_florida is on a distinguished road

I may turn this board into a cnc controller board, but I am not sure yet. I have been progressing a lot with emc2 (linux) and I now have an all solid state pentium with a 2GB CompactFlash card and Wireless Ethernet, Media Card Reader, etc running EMC2. Though it is much larger than my 3"x3" fpga board, my need for a cnc controller has somewhat diminished!

After making my first cuts and evaluating the whole cnc'ing process. I realize there is much yet to do. I want to remake my Z-axis, stiffen up my machine more, add digital read out and manual input controls. A lot of this I can do with off the shelf components and since I only want one cnc machine this is the cheaper solution for sure! (My fpga baord was intended for other projects anyway, so its not wasted.)

Also, I have been learning advanced g-code, including flow control such as loops/if's, etc, and getting just to where emc2 has me now, would require a lot of programming and effort. So I am left with asking myself "Why go there?" when I am so close now to start cutting parts and making money! ...and robots for my plan of global domination!

If I do use my fpga board I will simply wire it for usb or network connectivity to a remote emc2 computer. The board would then just house the real-time portions and I would write hal (emc hal!) modules to support it. The board would also be the IO for DRO and manual input controls. I think the EMC2 project could use such a "plug-and-play" board that controls steppers/servos, DRO and controls. The Mesa board can do it too, but there would still be some more circuitry required for it and its not so plug-and-play.
Reply With Quote

  #9   Ban this user!
Old 01-08-2008, 10:12 AM
Xerxes's Avatar  
Join Date: Sep 2004
Location: Finland
Posts: 1,162
Xerxes is on a distinguished road

Some "hardware accelerators" exist for EMC. See:

http://www.atelierrobin.net/p41.htm
http://www.pico-systems.com/univstep.html
http://axis.unpythonic.net/01183862490
Reply With Quote

Reply




Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
building FPGA motion controller Episs General Electronics Discussion 89 04-11-2011 05:56 AM
New low cost CNC Controller, USB, Windows XP based! bert_eding Product Announcements & Manufacturer News 13 10-25-2009 03:14 PM
Assembling Gecko based controller walter Gecko Drives 17 07-19-2005 04:30 PM
Dsp Based mini cnc controller CNCadmin Product Announcements & Manufacturer News 0 01-05-2005 06:59 AM
PC Based Hardware Controller Kit Needed pmartin223 General Electronics Discussion 6 06-13-2004 10:28 AM




All times are GMT -5. The time now is 09:07 PM.





Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2012, vBulletin Solutions, Inc.
Content Relevant URLs by vBSEO
Template-Modifications by TMS

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361