Project of the Day – Wind Turbine Dynamic Blade Pitch Controller

Today we have been working on a dynamic pitch control system for a wind turbine generator. Dynamic pitch enables the blades of a wind turbine to be rotated into or out of the wind to increase or decrease the amount of wind energy they can exploit. It is used for power control in some of the largest commercial wind turbines, but the controller pictured below is to be used on an off grid DIY 3kW wind turbine generator charging an 800Ah 48V battery bank in Murcia, Spain.

wind turbine dynamic blade pitch controllerThe designer, owner, and builder of this wind turbine has housed a 24VDC epicyclic motor inside the main shaft with slip rings to connect cables from the bottom of the mast to the turbine. This motor can turn the individual wind turbine blades clockwise or anti-clockwise, and he fitted limit switches at the position of maximum rotation in either direction to limit their motion.

At the top of the mast by the turbine generator is a 12V DPCO relay which is used to switch the +24V and 0V connections to enable the direction of the motor to be changed. When that relay is energised the motor turns one way, and when the relay is not energised the motor turns the opposite way.

He also has an anemometer (wind speed measuring device) which closes a relay when the wind speed exceeds 5 mph.

Schematic for wind turbine dynamic pitch control systemThe schematic above shows how our controller fits into the system. 12V (nominally) is tapped from the 48V battery bank, and the exact voltage measured. If the voltage exceeds a user programmed set point (13.5V) then we want the turbine blades to turn out of wind to reduce the power going into the battery. If the voltage is less than the set point then we want the turbine blades to be turned into the wind to try to increase the power going into the battery.

There are two relays on our controller: one switches +12V to the DPCO relay to dictate the direction the motor will turn, and the other switches the +24V (tapped from the 48V battery bank) which will power the motor.

If the wind speed is low (as measured by the anemometer) then the motor is not turned. If the wind speed is good then if the battery voltage is high the motor is powered for 1/4 of a second to turn the blades a little out of the wind, and if the battery voltage is low the motor is powered for 1/4 of a second to turn the blades a little into the wind. The limit switches override this setup so if the blades are already at their limit, the motor will not try to turn them past the limit.

This process is repeated every couple of seconds to keep everything as efficient as possible while protecting the batteries from overcharging.

Follow Up to RC Helicopter Lighting Controller

A few weeks ago we put together an automatic lighting controller for a radio controlled helicopter – see here for details on that project: RC Helicopter Lighting Controller.

That controller has now been successfully installed on the RC helicopter. Here are a couple of photographs – first the helicopter and secondly a view of the light detector mounted to it. We also have a video of the navigation lights coming on and turning off automatically according to ambient lighting conditions. Thanks to Troy for those.

rc helicopter automatic navigation lights rc-helicopter-light-detector

Low Voltage Disconnect – User Programmable Set Points in Binary

Our REUK Programmable Low Voltage Disconnect (LVD) is a product which is used to protect batteries from being excessively discharged and therefore permanently damaged. The user of this device can set the voltage at which the low voltage disconnect is activated, and a second higher voltage at which it is cancelled.

In programming mode, each button press reduces the low voltage by 0.1V from a default value of 12.5V, or increases the cancellation voltage by 0.1V from a default value of 12.0V. For example, they would press the button 7 times to set the low voltage to 11.8V (12.5-0.7V) or 9 times to set the cancellation voltage at 12.9V (12.0+0.9V).

This method of user data entry works very well as it is simple and much cheaper than using a digital display or digital keypad BUT where it does not work so well is in situations where the low voltage is to be set very low, or the cancellation voltage very high – for example, to set a low voltage of 10.0V would require 25 button presses. That is not convenient, and so many button presses increases the likelihood of the user making a mistake.

low voltage disconnect with binary entry of cut out and cut in voltages

To get around this occasional issue we have come up with an alternative design (prototype pictured above) which enables the user to enter the voltage set points using binary via a couple of buttons with corresponding red and green LEDs.

Let’s say someone wants to set the low voltage set point to be 12.4V. Removing the decimal point gives us 124 which is 1111100 in binary (just type a number followed by ‘in binary‘ in google to find out its binary value). The user enters this binary value pressing the red button for a ‘0’ and the green button for a ‘1’. The LEDs then replay the sequence of 1’s and 0’s for visual confirmation of correct data entry, and that’s it – the unit is programmed.

More Technical Detail

We were going to use an 8-bit value for the voltage entry, but that gives a maximum value of binary 11111111 which is 255 in decimal. Since we want our LVD’s to be suitable for 24V battery systems without software modification, 25.5V is almost always going to be too low and so 8 bits is simply not enough. Therefore we changed the design to 16-bit (maximum decimal value 65535) but this means that for the expected maximum voltage of 30.0V we have for the decimal value of 300 a 16-bit binary value of 0000000100101100. This has a lot of leading zeroes which again increases the chance of the user making a mistake – therefore in the final design the user enters the binary value starting with the least significant bit (i.e. going from right to left) and any leading zeroes (which are now following zeroes) are added automatically by the microcontroller.

For example, if a user with a 24V battery system wanted a cancellation voltage of 27.4V, they would type in the Google search box convert 274 to binary and get the following result:

convert decimal value to binary

The leading 0b just tells you that what follows is in binary – 100010010. The user then uses the red and green buttons to enter this binary value starting from right to left 0-1-0-0-1-0-0-0-1, and that is it – 27.4V has been successfully saved in the device.

Project of the Day – Swimming Pool Solar Water Heating Controller with Max Temperature

Today we have been working on a new solar water heating pump controller for use with a swimming pool with a user-settable maximum water temperature. This can be used to keep hot tubs at a safe temperature, or keep a swimming pool from getting unpleasantly hot.

This new device is based around our latest 2013 Solar Water Heating Pump Controller with the new features added on.

Swimming pool solar water heating controller with max temperature controlIn terms of hardware we have moved from a PICAXE-08M2 to a PICAXE-18M2 for its additional input/output pins, and then just added the yellow LED and second push button.

The operation of the controller is unchanged from the 2013 controller with the addition of the following functionality:

User can set maximum temperature the pool should reach to 1 degree accuracy from 25 degrees Celcius up.

If pool reaches the maximum temperature, the pump will turn off and not turn on again until the pool temperature has fallen by at least 2 degrees Celcius (hysteresis).

User can disable the maximum temperature feature or enable it with the push of a button.

If you need a controller of this type for your solar heated pool or hot-tub, do not hesitate to contact us via the REUK.co.uk website.

Standalone Arduino on a Breadboard

arduino duemilanove microcontroller board

We have used Arduino boards in many of our projects. For those that do not know, Arduino is described as an open-source electronics prototyping platform and is basically a microcontroller on a preassembled board with a good selection of IO (inputs and outputs) and availability of shields (add-on circuit boards to help with internet connectivity, motor control, and much more) which can be connected. The boards have a USB socket through which code is downloaded to the board and also to enable control of devices via a PC.

Although Arduino boards are relatively cheap, starting from around £10 each (click here for best priced Arduino boards), things start to get expensive when you do multiple custom embedded projects – particularly when you are not using the majority of the features provided on the board.

Fortunately it is possible to buy the microcontrollers which are found on the Arduino boards separately, add just a few components (a clock crystal, and a couple of capacitors), and build the rest of your project around that.

standalone arduino kit - microcontroller, crystal, and capacitors

The common Arduino duemilanove board for example has an ATMEL ATmega 328 microcontroller which are easy to purchase BUT a blank microcontroller is not enough. It must have the correct Bootloader (software) on it before you can use it with the Arduino programming environment and USB connection. This is a job you can do yourself (with an ISP programmer), but for most people it will be much easier and cheaper just to purchase a kit such as the one pictured above which we use and available here for around £3 (Arduino Bootloader Kit). These have the bootloader pre-installed on the microcontroller and include a PCB socket, and the capacitors and the external 16MHz clock crystal.

Standalone Arduino circuit

Using these kits means you only need one Arduino board which you use to download your code sketches to the microcontroller. You then unplug the microcontroller from the Arduino board and plug it in on your own project board.

Below is the ATmega168 / ATmega328 Arduino pin mapping diagram so you know which pins on the microcontroller correspond to the inputs and outputs labelled on an Arduino board.

arduino atmega328 and atmega168 pin mapping

Project of the Day – Use Surplus PV with Air Source Heat Pump

Since the introduction of feed in tariffs in the UK we have been selling our REUK Solar PV Immersion Controller (pictured below) the concept of which is described in our article Water Heating with Surplus Solar PV.

REUK solar PV immersion controller

This device uses a light detector to estimate the level of solar electricity generation, and if it exceeds a user set threshold it switches on an immersion heating element so that electricity generated in excess of what is needed can be used to heat water rather than being exported (sold) to the Grid for just a few pence per unit.

An immersion heating element is a very simple resistive heater which can be turned on and off repeatedly during the day (with fluctuating levels of solar generation) without coming to any harm. If instead our standard controller is to be used to switch an air source heat pump (ASHP) or similar complex device then there could be problems.

One of our customers wanted to use our controller to power his air source heat pump with surplus PV solar generation, but in discussions with the manufacturer was told that the ASHP should be run for at least 30 minutes each time it is turned on. We therefore modified our controller software so that after the ASHP turns on (following a period of consistent good solar generation) it will stay on for 25 minutes, and then only turn off after a 5 minute period during which 90% of the light level readings show bad solar generation.

The result of these changes is that there will be times when the electricity demanded by the ASHP exceeds solar generation and so electricity will have to be imported (bought) from the Grid to meet the shortfall. But, as air source heat pumps cost thousands of pounds, it is much more important to protect the equipment from damage than to worry about the few extra pounds incurred in importing mains electricity.

Project of the Day – RC Helicopter Lighting Controller

Today we made a controller to turn on the navigation lights on a radio controlled helicopter when it is dusk or dark outside.

RC Helicopter lighting controller

Being a small RC helicopter, the lighting controller had to be small in size and low weight. A basic transistor circuit with light detector would not have been up to the job since the navigation lights would flicker on and off when the light detector was at the ambient light/dark threshold. The controller therefore needed hysteresis to avoid this multi-switching. It also needed to be easy for the user to set the light/dark threshold at which the navigation lights turn off/on.

To keep everything small, we used a PICAXE-08M2 microcontroller for this project. To set the light/dark threshold we decided against using a potentiometer in case vibrations from the helicopter’s motor caused it to rotate away from the user set position. Instead we fitted a small tactile switch to the circuit board. If this is pressed and held (at dusk) while the controller is being connected to the battery pack, the light detector (mini LDR) measures the current ambient light level and stores this in memory (not lost when battery disconnected) as the light/dark threshold.

In standard operation, when the light level is measured to be brighter than the threshold continuously for two seconds, the output to the navigation lights is turned on. If subsequently the light level is measured to be duller than the threshold continuously for two seconds, the output to the navigation lights is turned off.

The dimensions of the controller are under 2 x 2 inches.

Project of the Day – Digital Photo Frame Low Voltage Disconnect

Today we put together a special order low voltage disconnect (LVD) to be used with a product display case containing a digital photo frame.

To make the case portable, instead of using the standard 5VDC power supply, 8 series connected high capacity C sized rechargeable cells have been fitted to give a 9.6V power supply which goes through a dc-dc voltage converter to get the required 5VDC to the photo frame.

Low voltage disconnect for digital photo frame

Unfortunately when the voltage of the 8xC battery pack falls to 8.7V (when the battery pack is almost empty of charge), the photo frame software crashes and gets stuck in a constant reboot cycle due to not having enough power to restart.

The low voltage disconnect we designed measures the voltage of the battery pack and if is more than 8.80V it outputs power to the voltage converter and photo frame. If the measured voltage falls below 8.80V, then the output is turned off and only turns back on again when the measured voltage is found to be greater than 9.20V.

The display case is fitted with a standard off the shelf battery charger which takes a 12VDC input. An external 12VDC power supply can be plugged into the case to recharge the battery pack while at the same time powering the photo frame via the low voltage disconnect circuit causing the disconnect to be cancelled (since the measured voltage is now 12V) and the photo frame to restart.

When the 12VDC is supplied, the 8xC cells are automatically disconnected from their series circuit and connected individually in parallel to the battery charger for charging. When charging is complete, the 12VDC power supply can be disconnected, the battery pack voltage will be >9.20V, and so the frame will continue unaffected.

We sell our own automatic user programmable low voltage disconnect in the REUK Shop. If you have any special requirements which this product does not meet, let us know and we should be able to put something together for you.

Project of the Day – 12V PIR Alarm System

Today we put together a 12V alarm system for a farm building located 100 metres from the farmer’s home. When motion is detected in the building by one or two standard , two relays close. The first causes a loud siren to sound, and the second turns on a bright strobe light visible from the farmer’s home.

PIR Alarm System with siren and strobeIf the controller is not reset by the farmer pressing an external panel mountable button then after 3 minutes the siren relay opens cutting the sound, but the strobe light is left turned on until the controller is manually reset to ensure that motion detection events are never missed.

If you need something along these lines then let us know. Click here for suitable low power consumption 12V strobe lights and/or low power high volume 12V sirens and sounders for your own projects.

12V Regulator for RC Planes, Helicopters, and Cars with Cameras

With the price of high quality ruggedised mini video cameras and transmitting equipment falling rapidly, many people are now attaching FPV (first person view) cameras to their radio controlled planes, helicopters, and cars with very impressive results.

View from RC plane camera

One common problem though is interference. When radio transmitting equipment is powered by the same power source as motors, servos etc, interference (noise) can add lines and other unwanted effects to the transmitted images.

The camera and transmitter need a very stable fixed voltage – e.g. 12.0 Volts – as anything else will damage the sensitive electronics. Therefore a voltage regulator is required. For their high efficiency and small dimensions a switching type regulator would appear to be the obvious choice, but this type of regulator generates yet more interference. Therefore a lower efficiency linear regulator must be used.

In the second half of this excellent article The Tricopter V2.6HV David Windestål from Sweden explains in detail how he built a very stable interference suppressing linear regulator around the LM2940 low dropout voltage regulator.

Very stable 12V linear regulator for RC

This is almost identical to our standard REUK 12V regulator but the components L1 (1mH coil) and C1 (low equivalent series resistance ESR also known as low impedance 22uF capacitor) have been added working together to make an LC filter (Wikipedia: electronic filter) to strip out any noise from the ESC (electronic speed controller) and everything else connected to the same battery pack.

Regulator for RC helicopter camera transmitter

With a 16.8V LiPo battery pack fitted in his DIY tricopter and a transmitter drawing 300mA, the regulator only has to get rid of 1.5W of heat, so only a small heatsink was required resulting in the finished regulator ended up small and light which transmits video which is “crystal clear [without] a hint of interference”.