This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
hardware:homeautomation [2008/06/18 10:54] johboh created |
hardware:homeautomation [2010/07/15 05:11] (current) |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== HomeAutomation ====== | ====== HomeAutomation ====== | ||
- | //// | + | //Distributed sensor and actuator network using a CAN-bus.// |
===== Changelog ===== | ===== Changelog ===== | ||
Line 13: | Line 13: | ||
===== Hardware ===== | ===== Hardware ===== | ||
- | N/A | + | The bus is a standard CAN-bus with an additional 12V supply powering all nodes. |
+ | Almost all nodes are using a base node with an additonal application specific expansion card. | ||
+ | All nodes has a bootloader so the software can be updated over the CAN-bus. See [[hardsoftware:canBootloader]] for more info. | ||
+ | |||
+ | {{:hardware:cannode.jpg?320|CanNode - base node}} canNode. This is the base node. It is build up around a Microchip 18F2685 CAN microcontroller, has a 2551 CAN transceiver, a 5V regulator, two micromatch CAN-bus connectors and a ICSP-contact. | ||
+ | |||
+ | The following nodes are or are going to be on the bus: | ||
+ | |||
+ | {{:hardware:cantemp.jpg?320|CanTemp}} canTemp. Uses canNode. Messaures temperature outside and inside the apartment. Can also turn the blind of my top right window. | ||
+ | |||
+ | {{:hardware:servo.jpg?320|CanTemp - close up}} Another view of the servo/blind connection. | ||
+ | |||
+ | |||
+ | __canFreezer:__ Uses canBase. Messaures temperature in the freezer and refrigerator and monitors if the freezer and refrigerator doors are open or closed. | ||
+ | Status: Software done. Schematic done. | ||
+ | Todo: Expansion card. | ||
+ | |||
+ | |||
+ | __canLCD:__ Uses canNode. Control panel next to the outer door. Messaures temperature outside and if the outer door is open or closed. Also has a 128x64 graphical LCD which displays different sensor values and where things like light and blind can be controlled (all acuators on the bus). | ||
+ | Status: Software done. Schematic done. | ||
+ | Todo: Expansion card. | ||
+ | |||
+ | |||
+ | __canIR:__ Uses canNode. Receives command from a remote control using the RC5, RC5-E or RC6 protocol. Can control all acutators on the bus. | ||
+ | Status: Software done. Schematic done (connect a IR-receiver to a canNode basicly). Has a working prototype on breadboard. | ||
+ | Todo: Expansion card. | ||
+ | |||
+ | |||
+ | __canIRtrans:__ Uses canNode. Send IR-commands to systems like TV, surround receiver, etc. | ||
+ | Todo: Software, schematic and Expansion card. | ||
+ | |||
+ | |||
+ | __canDimmer:__ Uses canNode or application specific node. Can dim 230V lights like regular light bulbs, halogen, etc. | ||
+ | Todo: Schematic, software (has an old from lightDimmer that can be used), and maybe expension card. | ||
+ | |||
+ | |||
+ | __canToSerial:__ Uses canNode. Works like a wrapper between the bus and RS232 for montioring and controlling the nodes from a computer. | ||
+ | Status: Software done. Schematic done. Has a working prototype on breadboard. | ||
+ | Todo: Expansion card. | ||
+ | |||
+ | {{:hardware:home_exp_ethernet.jpg?320|CanEthernet}} __canEthernet:__ Uses canNode. Works like a wrapper between the bus and internet (TCP/UDP) for controlling the nodes from internet and mobile phone. | ||
+ | |||
+ | Future nodes, only abstract ideas so far. | ||
+ | |||
+ | __canBed:__ Node that messaures the weight of the bed. By analyzing the weight changes in the bed it's possible to see eg. how much a person turns during the night. | ||
+ | |||
+ | __canVoice:__ Voice recognition node. Makes it possible to control all actuators using voice commands. | ||
+ | |||
===== Software ===== | ===== Software ===== | ||
- | N/A | + | There is no PC control software yet, but there is a couple of monitoring/debug applications. All written in C#. |
+ | |||
+ | {{:hardware:canwatcher.jpg?320|canWatcher}} canWatcher. Can send and receive CAN-packets. | ||
+ | |||
+ | {{:hardware:canwatcherlight.jpg?320|canWatcherLight}} canWatcherLight. Same as canWatcher, but a light version. | ||
+ | |||
+ | {{:hardware:canbootloader.jpg?320|canBootloader}} canBootloader. See [[hardsoftware:canBootloader]] for more info. | ||
===== Schematics ===== | ===== Schematics ===== | ||
- | N/A | + | {{:hardware:svnimages:cannode.sch.png?320|canNode - schematic}} canNode schematic. |
+ | |||
+ | {{:hardware:svnimages:cannode.brd.png?320|canNode - PCB}} canNode PCB. | ||
+ | |||
+ | {{:hardware:svnimages:exp-ethernet.sch.png?320|canEthernet - Schematic}} canEthernet schematic. | ||
+ | |||
+ | {{:hardware:svnimages:exp-ethernet.brd.png?320|canEthernet - PCB}} canEthernet PCB. | ||
+ | |||
+ | {{:hardware:svnimages:exp-freezer.sch.png?320|canFreezer - Schematic}} canFreezer schematic. | ||
+ | |||
+ | {{:hardware:svnimages:exp-lcd_lm6038b.sch.png?320|canLCD - Schematic}} canLCD schematic. | ||
+ | |||
+ | {{:hardware:svnimages:exp-temp.sch.png?320|canTemp - Schematic}} canTemp schematic. | ||
===== Firmware ===== | ===== Firmware ===== | ||
Line 26: | Line 92: | ||
===== Downloads ===== | ===== Downloads ===== | ||
Latest source code and schematic/PCB-layout can be found in repository\\ | Latest source code and schematic/PCB-layout can be found in repository\\ | ||
+ | // /software/trunk/PC/can* //, \\ | ||
// /software/trunk/Embedded/CAN/ // and\\ | // /software/trunk/Embedded/CAN/ // and\\ | ||
// /hardware/trunk/schematics/piCAN/ // in [[documents:svn| SVN]]. | // /hardware/trunk/schematics/piCAN/ // in [[documents:svn| SVN]]. | ||
+ | |||
+ | ===== License ===== | ||
+ | All information found on this page are licensed. See the [[documents:license]] page for more information. |