Wiring and Arduino Update
Well I have been very busy with course work. I though I would post a quick update.
I have finally finished reorganizing my wiring cabinet and I now have it jam-packed with all sort of equipment. As seen on the right.
I also stated the Arduino Power Meter Reader (APMR) project page which I will slowly add information to in the coming weeks. I will also be posting the source code on GitHub in the next couple of days. This will be released as an open source project.
Related articles
- Security system working with mControl via NPort (eco-sustain.org)
Proliphix IMT550w thermostat installed
Today I finally installed my Proliphix IMT550w Network Thermostat. As you may have read in my earlier post, it was hard to find the right thermostat for my American Standard HVAC system, and it took me over 2 week to do an exhaustive search to find the IMT550. To review, I have a dual fuel system with a 2-stage heat pump and a 2-stage, variable speed gas furnace.
I spent the last couple of weeks figuring out how my HVAC system is wired. This took some time because there where a different amount of terminals with different labels (e.g. my system labels W2 as X2, and not needed). The colouring of the wires was also different. I cautiously documented the current wiring scheme and the new wiring scheme with my new IMT550w installed. I then talked to Proliphix Support and they worked with me to come up with the right wiring scheme. Proliphix has one of the best support departments. Mark, from Proliphix Support, was knowledgeable and responded quickly to all my emails–what more could I ask for. For those of you who are interested in seeing the before and after diagram of my HVAC wiring take a look at my HVAC Wiring Scheme document.
What I like about the IMT550w is:
- I can read and change setting from my browser, making it easier to set up schedules;
- I can install additional indoor temperature sensors, providing more comfort and energy efficiency;
- the temperature sensors that go with the thermostat (need to order separately) are more accurate than the ACONT802;
- the thermostat firmware can be updated with new functionality.
Related articles
- Installing mControl v3 (eco-sustain.org)
Modelling the smart home, sensor data
Today David Lindberg a fellow graduate student and colleague ask, “I need a better picture of the data you’re receiving from the houses. Can you send me your database schema“? David will be looking at modelling tools and developing a model for the home. I though it might be a good idea to take some time and post what I have experienced and some of my opinions.
In my opinion, there are 2 basic data types that 99% of all sensors and actuators use (the other 1% in have not seen yet):
- a relay, like on/off, 1/0, yes/no, open/closed, or high/low;
- or, a setpoint, like a scale or discrete value (e.g. the temperature, the light level).
With sensors you can read these values and with actuators you can set these values. When it comes to reading sensors, there are 2 ways that sensors can be read, and this depends on the function of the sensor:
- continuous and periodic set interval, meters and environmental sensors (temperature, light) are typical examples of this;
- or, event triggered, PIR motion and door/window contacts are typical examples.
An example of how you can read sensors and set actuators would be to trigger a furnace to heat a room. You might place a temperature sensor in a room that is connected to micro-controller or MCU (e.g. an Arduino). The MCU would continuous read a discrete value from the temperature sensor, say once every second. The MCU could also be connected to the furnace (the actuator), say via a relay interface. We then program into the MCU the simple command, “when the temperature is under 21°C set the furnace relay to on, and when the temperature is over 21.5°C set the furnace relay to off”. Note: setting the furnace relay to on would turn the furnace on, and 21°C would be considered a setpoint.
Now if you wanted to store sensor data in a database the most basic table you could create that would store any kind of reading would be:
- the sensor name or ID, this is a unique value and a way to identify one sensor from another;
- the date and time of the reading, it is best to store this in UTC or GMT to avoid daylight savings time change issues;
- the periodic value, the amount since the last periodic reading;
- the instantaneous value, what the sensor’s reading is now.
So what is this periodic value, instantaneous value thing? When and how do I use them? Good questions, I am glad you asked! If we look at power meters, the periodic value would be the amount of Wh (watt-hours) used since the last reading and the instantaneous value would be in W (watts) for the current power level. With temperature sensors there would be no periodic value and the instantaneous value would be the current temperature (in °C, °F, or °K).
I may have more to add later…
Security system working with mControl via NPort
So yesterday and today I spent time installing the NPort 5250A Serial to IP Server and hooking it up to my DSC security system. After the hardware was setup, I enabled the “DSC PS” driver in mControl Service Manager and configured it with the right IP address and port. Then I added a new device in mControl Editor. Once done, I was able to arm/disarm the security system without issue. What I like about mControl is that once the hard work of installing the hardware is done, there is no struggle on the automation software side; only add or change some settings/configurations and it just works! Next task is to get the NPort to talk RS485 to my ION6200 power meters and write the corresponding mControl driver.
In the next couple of weeks I will be posting more information on:
- how to create a meter enclosure for your smart/revenue meter;
- how to start writing mControl drivers;
- a project page on how to create you own Arduino power meter reader (the APMR project), that uses a real-time clock (RTC) and RS485/MODBUS.
One thing to note is that I am trying to get the “DSC PS” driver in mControl modified. My security system has 4 partitions and the driver, in its current form, only support 2.
Related articles
- Installing mControl v3 (eco-sustain.org)
- mControl Device Drivers (eco-sustain.org)
Insteon phase coupler installed
So I installed the SignaLinc hardwired phase coupler and the 10A FilterLinc today and it looks like all the communication issues I was having are gone. I am still getting hop counts of 3 on some devices, but I think that may go away once I install more Insteon hardware.
Related articles
- Insteon communication issues (eco-sustain.org)
Insteon communication issues
Looks like I have some issues with Insteon communication. The mControl log is recording error such as:
!!! PowerLinc possible data loss: 0x02 not found at beginning of data !!! PowerLinc communication error - NAK received (B) !!! PowerLinc possible data loss: 0x02 not found at beginning of data
And the device summary shows a lot of “reachable=false, hops=3″ which is not good. If I change where the Insteom PLM is plugged in then I get somewhat better results. Looks like I need to:
- couple the phases with a SignaLinc hardwired phase coupler;
- a filter out any noise from my computer UPS with a 10A FilterLinc.
Hopefully this will do the trick. I have ordered the equipment and will update you on how I resolve this issue…
mControl Device Drivers
I just finished having a meeting with Ted and Roger from Embedded Automation on how to write device drivers for mControl. It was great that they took some time out of their busy day to meet with me at the SFU Surrey Campus. Now that I have a handle on this I am looking to create a number of drivers that can:
- talk to RS485/Modbus devices, in this case my power meters;
- receive consumption data from the AcquiLite about water and natural gas usage;
- update my ambient display, Elements of Consumption.
These devices that I will be adding to mControl will allow me to start monitoring my energy consumption more closely. I will using a new service in mControl v3 to capture and store data in a database. That data will be analyzed by machine learning algorithms to find patterns of usage and to identify what appliances were used. If you are interested in learning more about this project feel free to contact me. Soon I will announce a way for anyone that uses mControl v3 to participate…
Rewiring, Phase 1
I spend a good part of the day reorganizing my wiring cabinet (phase 1 of 2). Looks much better now… For the last couple of months it was looking like an apocalyptic mess after I pulled all the wire out; loose wires hung everywhere! Here is the after picture.
Insteon equipment is here
Well, I just received my shipment of Insteon devices. Now I have to plan out where to install them. I only ordered a small sample to install around the house, these include on/off switches, dimmer switches, iMeters, and modem. Next week I plan to set up mControl as my home automation system to communicate/control the Insteon devices. I am still waiting for my Dell Zino to be delivered. Version 3 of mControl will be out soon, but in the mean time I will be using the Beta 2 version. I will have a post on how the mControl install when, so stay tuned…


