Blog :: Waddon
From Grahamsoft Labs
Details the prototyping and trails of this project.
There is no spell check on this page, even where I spot a mistake I do not alter it to reduce wasted time.
[edit] Friday 28th March 2008
Handed in. Huray!
[edit] Tuesday 25th March 2008
Binded today.
[edit] Tuesday 4th March 2008
Finalising the write up begins today. T Minus 4 weeks.
[edit] Tuesday 5th February 2008
The last few days I have been concentrating on coding the movement routines and also fixing some bugs with the 'sending' comms. I have made good progress on both.
[edit] Saturday 2nd February 2008
Yesterday and today I have been working on the Platform manager. I can now set the details of a train at a platform and request the controller to depart the train. There is a small problem with one of the messages but overall it seems to be coming together nicely.
[edit] Wednesday 30th January 2008
I spent most of today updating the documentation with the new terminonlogy.
[edit] Tuesday 29th January 2008
Finally getting some movement routines completed without train movements, which means points/signals/sesors all operate depending on the requested platform. Comms is starting to look good now. Had a major problem with Comms forwarding -- This is where the controller forwards the whole message it receives to the next controller when the TO element of the xml isn't the ID of the current controller. Orignally I copied the message and simply sent it back to the next controller, But there wasn't the memory needed to copy a 200 char string twice. The reason I had to do a copy insted of sending the orginal was the string tok function has a side effort of breaking the string so it can't be reused. To over come this the message is loaded into the Jobs queue as a normal message would be, but insted of doing anything with it the send comms functions spits in back out, problem solved.
[edit] Sunday 27th January 2008
Been working alot on the Comms for the last three days. Starting to come against memory problems and im starting to realise where I can cut down on wasted memeory. One thing I am starting to remove is getter and setting functions as these take up wasted memory. I have now changed some of the terminonlogy of the project, whishes are now jobs however there is alot of code and documentation that still features whishes. The Capacitor Discharge Units have arrived which should solve a problem I had with the points taking too much current.
[edit] Tuesday 25th December 2007
Merry Christmas. To get some time to my own I have been coding parts of the Jobs List.
[edit] Monday 5th November 2007
As both controllers are sharing one power supply, and as when a point is powered it draws the full current of the supply, if both controllers move a point at the same time like on initailisation, there will not be enough current to power both points and therefore one will fail to move.
[edit] Tuesday 30th October 2007
The project plan was aproved today. I am now looking for a reader.
[edit] Friday 20th October 2007
I have started to create a project plan.
[edit] Monday 15th October 2007
Continuing defining the communication protocol.
[edit] Thursday 11th October 2007
The project has now been aproved by my university lecture.
[edit] Tuesday 11th September 2007
I am now able to uncouple and reattach a railway carriage. see here
[edit] Monday 10th September 2007
Was able to get a basic forward/backward movement working with the new demo layout. It can be seen here here. Also got the timers working correctly.
[edit] Sunday 9th September 2007
Finished the second demo track.
[edit] Friday 7th September 2007
Solved the problem with the comms which was due to a common ground not being used between demo board and controller which explains why it worked on the demo board but not on the controller. Started work on finishing the second demo track.
[edit] Thursday 30th August 2007
Still trying to debug the problem with the comms with no success.
[edit] Wednesday 29th August 2007
I created the first Waddon controller today. Initial tests seem fine with most I/O, but I have a strange problem with the comms where it works fine on the demo board but when I move the PIC over to the new controller it dosn't work.
[edit] Monday 27th August 2007
I have achieved PIC to PIC comms. I can now type a key on the keyboard which sends it to PIC 1, that relays it to PIC 2 which relays it back to the computer to be displayed on the screen. This proves that a ring architecture is achievable.
[edit] Sunday 26th August 2007
I have been refining the PC to PIC comms, I have now started work on PIC 2 PIC comms.
[edit] Thursday 23th August 2007
I soldered the serial driver to my demo board and was able to output text to the windows hyper terminal.
[edit] Tuesday 21th August 2007
I'm happy with timers and interrupts now so I have moved onto testing the input lines for the sensors.
[edit] Wednesday 15th August 2007
Now I'm working with timers and interrupts
[edit] Monday 13th August 2007
Got both PWMs working today, now I am working on using timers.
[edit] Thursday 9th August 2007
Continued creating a demo board, had some issues with Master Clear Line being enabled as this created flickering of the LEDs which I debugged in the late afternoon. Also had troubble with getting I/O A6 to work, this is multiplexed with the oscillator, setting the Oscillator configuration bit to "INTOSC: INTOSC+RA6, USB-EC" solved this.
[edit] Wednesday 8th August 2007
Started to create a small demo board to test the PIC18.
[edit] Tuesday 7th August 2007
Started to create a program structure to prove I can use all the ports I want to use.
[edit] Monday 6th August 2007
Painted the base board today.
[edit] Sunday 5th August 2007
The last couple days I have been working on stripboard and chip diagrams.
[edit] Friday 28th July 2007
Development has been slow recently. Time has been taken up understanding the new PIC18 microcontroller. Initially I have general issues with programming the new chip, which I solved when I found out I needed to turn off the low voltage programming feature. I then tried to flash a LED, which after a lot of time wasted I found that the chip was running so fast that this was hard to do; so I lowered the speed of the chip. I have also had issues with exporting the config bits from MPLAB IDE, which I have now solved.
I have now been able to demo a Signal which can be seen here: http://www.youtube.com/watch?v=XpOpkDG-tqg
[edit] Thursday 19th July 2007
I have decided to go with a modularised design by using two microcontroller, controlling their own section of track. I can them talk about control abstraction and whether it aids the control process.
[edit] Wednesday 11th July 2007
No progress today, but the darlington driver for the points control did fail and had to be replaced. To make sure this doesn’t happen again two Darlington drivers will be place in parallel to decrease the load on them.
[edit] Tuesday 10th July 2007
Today I worked on getting the points working. They were already wired in but just needed a software update.
A video of the current progress can be seen here: http://uk.youtube.com/watch?v=b1DMQ9BnTIE
[edit] Monday 9th July 2007
More optos arrived in the post today so I was able to construct a forward/backward configuration but using 2 opto switches.
[edit] Saturday 7th July 2007
This weekend a prototype of the hardware where constructed using a smaller PIC Microcontroller. One opto switch was used and basic forward/backwards train control was achieved. The speed of the train was initially slow however and it was decided to replace the power supply with one that delivered 1200mA instead of 500. The H Bridge was running extremely hot throughout testing and eventually unsoldered itself. Reducing the heat will have to be considered in future builds.
