Follow our illustrated blog on Embedded Software Architecture

How to build a hybrid solar/wind energy harvester?

Battery charging with the Wind-turbine simulator

In order to charge batteries with the wind turbine simulator, the setup already becomes quite elaborate. First, there is the brushed DC motor which drives the axial flux turbine. It has a 24V, 350W and maximum 19A rating. The DC motor drives the generator with a chain gear to step down the high RPM of […]

Share

Charging a deep-cycle battery via low-side mosfet switching: the hard way

Introduction The core of our charge controller (PMD2) is essentially two switchable mosfet channels: one channel to load a battery (bank) and another channel to divert abundant energy to a dump load. Both channels can be switched on/off by software controlled PWM, and by configuring different PWM duty cycle ratios, we should be able: to […]

Share

Building a wind-turbine simulator

One of the challenges involved in designing and developing the ‘energy harvester‘, is to work out how to design, prototype, test and evaluate software algorithms for managing power flow in the system. At first, we can use powerful lab power supplies: We have lab supplies capable of 900W, 1500W and 3000W DC power output. These […]

Share

How we work: one year retrospective

Introduction We started the energy harverster project about a year ago and we thought it might be interesting to our readers to explain how we work and how we get the job done. Of course, bringing the technical challenge to a good end is important but only part of our mission, which is to: demonstrate […]

Share

Charge controller high-side / low-side wiring diagrams – part 2

Connection scheme for low-side switching In comparison to the high-side wiring diagram we saw in part 1, the connections for low-side switching are the other way around: all ‘+’-s are connected (instead of all ‘-‘-s), and the (power) switching devices are ‘below’ the loads (instead of ‘above’). In order to better explain this diagram, we need […]

Share

Programs, processes and threads – Part 2

This post is Part 2 of the series. Part1, which explains Programs and Processes, can be found here. Thread A thread is a single path of execution and schedulable by the CPU. It has its own stack, program counter and set of registers. A process (living program and container of all resources — see Part1) has one […]

Share

Embedded device communication

An embedded device does not do its job in the ‘void’. It needs to interact (and communicate) with users and/or other devices. Even inside an embedded device, lots of communication is required between controllers and (external) peripherals, sensors and actuators. Communication properties In general communication happens one to one (e.g. a telephone call via a […]

Share

Device-internal current and voltage sensing – part 2

Attopilot 50V 180A A few weeks ago we tested the Attopilot 50V 90A. Results were ok, we only noticed a small gap between measured and real amps. Today we show you the experimentation results of the 180A  Attopilot sensor board. Again, we used the Deans connectors and quite a lot of solder to connect the Attopilot device […]

Share

Charge controller high-side / low-side wiring diagrams – part 1

Introduction After exploring the relay solution space (read part1, part2 and part3), we decided to actually change the boundary of the system and move the relay outside of the energy harvester. Main reason is flexibility and scalability: one could choose a more optimal relay in terms of cost and power spec depending on the (maximum) […]

Share

Programs, processes and threads – Part 1

Introduction Especially process and thread are terms which have many different definitions and implementations. And therefor, it is easy to get confused, and hard to get the concepts crystallized in your mind. Just do some googling and you will find plenty of sources which more or less contradict each other. We will add another source […]

Share