Print This Post

A slightly better aproach?

I was attaching some strain gauges the other day and it occured to me that a far more sensible way to measure the PC muscle contractions would be to measure their force on a structure. I had originally thought of using surface electromyography but the noise problems are quite annoying and using fluid filled contraptions and measuring hydrostatic pressure are just a recipe for messiness.

This technology is already used in this field in the Barlow gauge but in reverse. so it has bee proven.

Another little redesigning. AGAIN!!!

Print This Post

And another little box gets it’s tick…

Another major bit of code implemented, the bootloader.

“Why does it need a bootloader?” I hear you cry (well I don’t hear that but I suspect you are probably crying it, well at least thinking it. Hmm. Maybee not). Well as this unit has quite a bit of firmware on it it needs to be designed in such a way as to allow the user to update it since it will probably go out of date rather quickly as new features are added and bugs are eliminated. This is a simple process if an engineer with appropriate tools is to hand but no good for your average button pressing computer user. In the latter case the ability to write new firmware to the uC must be built into the device itself, hence a bootloader.

My bootloader is basically a partial rewrite of the Tiny PIC bootloader. A wonderful bit of software which I have modified to sit in a different part of the programme memory, made device specific and tweaked to talk to my VB interface programme.

It just needs a spot of polishing and it will be finished but this is a majour chunk of the programming done. Just have to finish the PC software and write the magic bio-feedback control.

getting there though…

Print This Post

Another little side line….

After wondering what all the fuss about Arduino was I thought I’d buy one. And of course the first thing i did after the flashing LED was use one of the PWM examples to drive the output transistor of my intelligent vibrator on breadboard. the result is the this video.

(brings new meaning to “Arduino Inside”)

What’s slightly more important is it took about 20 seconds to do this little example and flash it to the uC with the built in bootloader. I may have to port everything to one of these things since it is so damn easy to use. However it does give you that hollow feeling that maybe the code you are implementing isn’t all that streamlined and it was all a little too easy. A bit like going to the supermarket and not supporting your local corner shop.

Print This Post

0.6.1 alpha released. Now with Functions that work!!

Video here
Just writing the Biofeeedback stuff and rewriting the USB control and then I’ll add a boot loader and then I just neet the PC software and thats all the code done.

As for hardware, This is a mock up of how the box might look (the LCD will go above the knob) Box

Print This Post

Interface teaser

For those who don’t believe that there is anything going on I bring you a teaser of the interface. You can see the main modes of operation you can expect. So far only the menu has been written and when an item is selected it simply displays the number of the item chosen and returns to the menu after a delay. code for almost all these functions has been written and just needs to be interfaced to the display.

so without further ado, click here

Print This Post

Still too warm for a feature freeze.

I have finally got round to changing my LCD control software to 4bit operation so as to use fewer port pins and in doing so it occured red to me that it would me very daft to have an LCD display and not use it for the main function menu (I was planning on having a bunch of LEDs give out a binary number and a control knob to select the mode but on reflection that’s just stupid!!). So once again is back to the coding/drawing board. Mind you had I thought about it before maybe I wouldn’t keep having theses little drawbacks….

Print This Post

When words fail you, make some up…

For those who are interested in the wonders of CNC (probably none of you) I thought I would write a quick post to describe wht i have done so far.

AS mentioned here the control board has been replaced and I am controling everything with VB Express 2008. Here is a little more detail

The protocol for the machine

The reason the people who built this machine originally used both parallel and serial comms was because of the amount of data to be transmitted. so to do the same over a single serial link will require some packing. Unfortunately there is no standard way to do this, so therefore there is a requirement for me start by writing a protocol to handle all this info. The basic idea is to use the serial port like an 8 bit wide parallel port. Each byte is then an instruction. The prelim spec for the control protocol is here in OO format. if anyone actually wants to read this in MS Word .DOC format let me know and i will convert it.

After being able to communicate with the machine i needed to write some code to send commands to the machine and, more importantly, create lines and arcs from which everything else can be created. So i wrote some code to implement Bresenham’s line and arc algorithms and then wrote an XML based machine control language (since i am not a G-code fan, i think it is a bit out of date). Once i work out how i am going to do Post the code without it being mistaken for HTML i will post a sample programme in this post but until then you can see the programme that made this drawing here (simply open with notepad)

any more data wanted or people wanting to help develop this software, let me know

Print This Post

What the whoby whaty?

I just noticed that there have been a spike of hits on my site. After a little snooping through the stats i see that slashdong gave me reference. It looks like someone has been reading what i write. Apologies for anyone else who was waiting for the next instalment. I will try and post some more stuff about the progress as things get done. Comments welcome (they let me know that people are in fact reading this stuff since most of my stats say that the visiting browsers are just search engine robots).

Print This Post

coming together!!

Sorry for the lack of posts but my adventure into the world of CNC machines took me of at a slant so here is progress on the two projects. (Also no one is commenting so i don’t know if anyone is actually reading this or whether i am just wittering into the cyber darkness.)

Almost all written and just waiting for a PCB to be made and the last little bit (the electromyography bit) to get working. I’m attempting to build an EKG to start with since that’s easy for me to test and then i will just change the probes and the software for the final version (and possibly the gain of the input amp) The PCB will hopefully be made on my nice shiny new PCB router once i can get it working. It does a very good job of ploughing all the way through the board or just compliant at me at the moment. The breadboard prototype is now looking like this and there’s more to add (also just noticed that the serial port 9pin D-sub has fallen off in that pic but it shuould be hanging off the MAX232 there) . Most of the parts for the beta model have been bought including thisrather swanky box (the red one) which requires holes to be made in it for controls which will hopefully be done with my Boxford Duet now that i have finished the first attempt at the software.

CNC controllerScreenshot 1
cnc-file-maker.JPGScreenshot 2

Its all still moving along. It will be finished one day….

Print This Post

We have functionality. (but my god it is annoying)

So porting is finished and serial control works. The python script reads an RSS feed and sends the characters to the serial port. The serial port is a USB to serial converter based on a Prolific chip so if I integrate that onto the same board as everything g else I have USB support. All is going to plan….this only means it got down hill from here.

The 18F4550 breadboard model is shown below

18F4550 model