It’s been a busy couple of days playing with the Nixie Clock but it’s been well worth it.
The firmware for the PIC is completed and running and the main logic board that contains the PIC, RS232 interface, Audio Amplifier, HT and +5v PSU is complete and working.
I had to make a few “modifications” to the wooden case as the display board PCB was slightly too wide and the 7-way Molex connector was catching on the side, preventing the board from sliding into place. Thank heavens for electric files !!
The chap who will be receiving this is a bit of a change freak and loves things that are configurable, so every parameter can be configured by hooking to clock up to a dumb RS232 terminal.
There is provision for two temperature sensors to be connected, and you can set alarms if minimum or maximum temperatures on either channel are exceeded. Alarms in either flashing coloured LED’s and/or an audio alert (frequency configurable of course).
There is provision for the CPU to power down the Nixie tubes during a specified time window. This could be useful during the day when the owner will be at work and should help extend the life of the tubes.
The on board RTC (DS1802) can have its date / time set via a simple command over the serial port, and is also responsible for trickle-charging the on-board NiMH back up battery.
All that’s left to do is fit everything into the case and possibly make a few alterations to the firmware. I’m using just under 25% if the available program space so lots of room available for additional features. I’ve also added a 8-way Molex connector to the top of the PCB that brings out +5v, 0v and the remaining unused I/O pins from the PIC; this will make hardware expansion simpler when it’s required; and it will be required at some point.
I've also marked all the connectors so that when enquiring hands take the darn thing apart, it can be put back to gether... that's going to happen at some point as well I suspe
Picture showing back wooden panel with interface connector, logic and driver board.
I use a DS18B20 temperature sensor IC in several of my projects and I encountered an interesting problem recently. This IC runs over Maxim’s 1-Wire interface and should, in theory, work over cable lengths of several hundred meters or more.
However, when I tried to run one of these sensors over a cable longer than around 50cm it refused to work. Shortening the cable always brought the sensor back to life.
In desperation I tried a different sensor and hey-presto, it worked on my test 5M cable.
So, I purchased 10 sensors off EBay and gave them a try. Each one worked perfectly on my 5M cable so I can only assume that I’d been unlucky to have a semi-faulty sensory IC.
I’ve binned this IC as whilst they are rather expensive if you buy from a regular supplier, at less than £2 each off EBay, I wasn’t going to risk having the IC suddenly fail on my at some point in the future; and there’s obviously something wrong with it.
I recently posted details of a complete construction project for a digital thermometer and clock, partly in response to a request but also because I’d been thinking about building one for a while. Because I wanted this to be an easily maintainable project by anybody, I opted to use the new AMICUS18 free compiler from Crownhill (I already use their PROTON BASIC+ compiler but you have to purchase that though it supports most, if not all, 10F, 12F, 16F and 18F parts). In a nutshell, the AMICUS18 compiler and IDE allows you to write Proton BASIC programs for two specific Microchip PICs, and these PICs just happen to form the core of Arduino compatible CPU boards and shields, so this basically means that you no longer have to work with ATMEL CPU’s exclusively if you want to play with Arduino hardware, and because AMICUS18 is free, this opens up a whole pile of possibilities for project construction, for as long as you limit yourself to a couple of PICs (18F25K20 and 18F25K22), then you can write unrestricted and very powerful code in good old friendly BASIC.
I’ve also realised that whilst there are many web sites containing lots of projects to build, they tend to supply you just a circuit diagram and if you’re lucky, a .HEX files for the CPU. These are ok for seasoned constructors who in reality, probably just want to grab some circuit ideas and wouldn’t usually build the project in it’s entirety in the first place, but for beginners and novices, something more akin to what the great electronics magazines of yester-year used to produce is more appropriate and that’s why I’ve opted to try and provide full construction details for some of my projects.
So, with all this in mind, I’m currently working on another project – an Evaporator.
Ok, actually this is a device that produces a small amount of heat and has a thermometer and timer built in. You set the run time in minutes, maximum temperature you want, and the device attempts to maintain a “hot-zone” at the required temperature for the specified time. In this version of the project, I’m using a 12v / 20w halogen lamp has the heat source and it’s used to gently warm an evaporating basin (small porcelain dish) that’s full of liquid that in turn has a solid dissolved in it. You could use it to recover the salt (and the other solid material) from a few mL of sea-water for example. With a few changes to the physical hardware layout and perhaps a different heating element, you could use this as an incubator. The unit has an LCD display, some push button switches, a temperature sensor, a MOSFET that can switch around 35A if required, PSU section, and a PIC 18F25K22 running some firmware written using the AMICUS18 free compiler; this means you can customise the firmware as you please. One upgrade may be to fit a fan so that if it gets too warm it can cool; perhaps the addition of a Peltier module - the skys the limit when you start thinking about the possible options.
The prototype which is sat on a bread-board right now, works remarkably well. I use PWM (Pulse Width Modulation) to drive the heater (lamp) via the MOSFET. The heat from the lamp is detected by a DS18b20 1-wire temperature sensor (I had a couple spare from my digital thermometer project), and fed back to the PIC. The PIC constantly monitors the temperature and using a very simple algorithm attempts to maintain the temperature by adjusting the brightness of the lamp. Once it warmed up, it was maintaining the temperature to within 0.1 oC which for a first attempt was rather impressive I thought.
I’ll publish full construction details soon, probably when I get back from vacation.