Motor Controller Progress Update

12 11 2012

Don’t worry everyone, I haven’t disappeared off the face of the Earth. Just have been taking my time with my projects and also ran into a lot of snags on the way.

First up is the printed circuit board for the motor control schematic I posted earlier. The design is finished but I have had some troubles getting in made so I can test it. I also have had trouble uploading the KiCAD files for the board onto github in a way that is then downloadable. So, as a result, I am currently moving all of the modules that I used on the board into a single library that can then be downloaded with the board. Hopefully this will fix the problem.

Now, back to the problems I’ve been having getting the board made. Since I am a low income earner, I can’t easily afford to get my designs made by professional board manufacturers and have to rely on my home made boards. I usually use the photo-lithography (also known as photo transfer) method but ran out of the positive resist boards that I have for this purpose. The people who I use to buy these boards from no longer sell them, which means that only the negative resist boards are available locally and they are quite expensive. This led me to find a seller on the opposite side of the country that does sell the positive resist boards I am use to, but they charge $15 for freight up to 3kg, which was almost the same cost of the board itself.

I shelved that idea at that point, mainly due to me being lent a Roland MDX-20 CNC router. This then opened up a bigger kettle of fish. I have had a bit of experience with this machine in the past and gave up on it. This was a result of the bad quality software that comes packaged with it that will only run on windows. This time around, however, I was determined to get something printing from it in an open source environment. I jumped the gun and downloaded the LinuxCNC ISO then installed it on an unwanted old computer I was given by a friend. This didn’t work for me because the Roland router uses a specific language that was derived from HPGL called RML and LinuxCNC does not have the capability to send these commands to it.

After this, I tracked down two pieces of software. The first is a piece of software developed a MIT (link to come) and another called Tux Plot. The MIT software worked but it was very time inefficient and took over two hours before it was even half done on my test piece. I didn’t spend heaps of time on this and it may have just been a configuration issue, but it put me off anyway. Tux Plot didn’t work very well at all. It is meant to convert HPGL to RML then send it to the router. But, it was hard to calibrate and also did some weird conversions, like trying to drill through the entire board at the corners of my design. It also does not convert some of the commands. The HPGL format supports circles and arcs directly but RML does not and you must manually tell it to draw circles and arcs point by point. Tux Plot doesn’t take this into account and just leaves the circle commands in the code without doing anything at all. This results in the router going to the location of the centre of the circle then going down then straight back up without making the circle. The final blow for Tux Plot came when I found out that KiCAD outputs HPGL in a configuration meant for plotters (as it is originally intended) and not for routers. So, where the HPGL file tells the router to go is where a plotter would normally draw with its pen. Instead I have a milling bit that wants to cut stuff away. This results in the tracks being cut away instead of the gaps between them.

It was with this realisation that I knew getting this router to work with KiCAD in a reasonable manner was a project in itself. So, I have given up on it for the current time and will revisit it when I am finished the bicycle. In the mean time, I wrote a post on the hackaday forums trying to organise a group buy for the positive resist boards I found, but have not had anyone reply as of yet. I bit the bullet and spent the money on the negative resist board, just so I can get the project moving again. I think I will have to save up a bit and do a bulk buy myself and sell the excess on ebay, or sell kits of the finished design to use them up.

That’s pretty well where I’m at currently. My next step is to sort out my github issues and manufacture the first prototype of the alpha design for the power section of the motor controller.