Coursework Title: FPGA Programming Project
Module Name:Programmable Electronic Devices
Hand-in Method:Hand in printed report at Avril Robarts LRC
Feedback Method:Return of marked scripts
Learning Outcomes to be assessed
LO1, LO2, LO3, LO4, LO5
6008ENGFRI Programmable Electronic Devices
Design Project, Spring 2013
Central Heating Room Thermostat / Controller
You are to design a circuit for a combined room thermostat and system controller for the domestic central heating system shown in figure 1, to be implemented in a Spartan 3E FPGA. The device is to be mounted on a wall in the main living room. Normally, the thermostat will display the temperature that it measures in the room. The device will have buttons for the user to increase or decrease the temperature setting for the room. While set temperature adjustment is carried out, the display of measured temperature will be replaced with a display of the set temperature. The set temperature will be displayed for a further five seconds after the final button press. When the temperature falls an "indicated" one degree below the set level, the heating will be activated until the set level is reached again. The heat source is a gas boiler/circulating pump unit, with a single ON/OFF control. This will heat water, which will be circulated through the system by the pump. There are three separate "zones" in the system.
Zone 1. Downstairs heating
Zone 2. Upstairs heating
Zone 3. Hot water
The thermostats in zones 2 and 3 will provide a simple ON/OFF demand for heat.
Water flow into each zone is controlled by a motorized "zone valve". When a valve is powered, it opens. When power to the valve is switched off, the valve is closed by a return spring. For safety reasons, the boiler/pump unit must not operate unless at least one of the three valves is open. This link shows a typical valve used in this kind of application.
In addition, each zone has an external real time clock which outputs a heating enable/disable signal for that zone, according to user requirements. This clock is not part of the project (unless you finish early and feel like designing one!)
You may assume that there is sufficient hysteresis in the system not to require any complex PID type controller!
Figure 1. Heating system schematic diagram (T1 is the device you will design)
1. Produce a "tighter" specification for the project. You will design a prototype to be tested on the Spartan 3E development kit, so bear in mind what is available to you on that kit. (Assume that external circuits will handle the conversion between your digital signals and the mains voltage signals of the central heating equipment.)
2. Use a hierarchical design methodology to break the project into a set of smaller modules which you can eventually join together to produce the complete system. Each module should have its own specification. For example, what inputs are required, what outputs are produced and how it can be tested. Using a modular design technique will allow you to improve the internal design of each module at a later date.
3. Your design should be of sufficient complexity to demonstrate your skills, but not so overly complex that you risk not completing the project within the allotted time. (This is why we are using external real time clocks, which can be simulated using a switch. Feel free to design internal real time clocks, at a later date! For now keep it simple, add "sophistication" when you have something that works. If you can find anything in the Xilinx demos that you can make use of, then use it.)...