Presentation on theme: "SOA in the Home - with RFID, iPhone and Simple Service Orchestration Peter Rhys Jenkins IBM Software Group 1st March 2009."— Presentation transcript:
SOA in the Home - with RFID, iPhone and Simple Service Orchestration Peter Rhys Jenkins IBM Software Group Peter.firstname.lastname@example.org 1st March 2009 Session 1434
2 Why ?
3 I have a BIG House - started in1896
5 Automation Architecture
6 Architectural Tenents Able to withstand catastrophic failure – e.g. Fail safe doors. Able to withstand multiple service failures. Zero learning curve for Human Interfaces. Reasonable price. State of the Art and Beyond. Documented for repeatability. Rapid Recovery from catastrophic failure (ISO Images).
8 Wiring – Cat6 Coppers last stand
9 Wiring. Cat 6 for 10 Gigiabit Ethernet Backbone (Currently 100Mb) Cat 5e for Phone, IR Distribution. Shielded RG6 coax for Video. HDMI cables for Theatre. RF Relays between Dimmers. Mesh Network Dimmers. No Daisy Chaining No Cat 7 – New Connector – not RJ45
10 Physical View
11 Infrastructure Hardware
12 Managed Infrastructure HAI Omnipro II Controller 8 PIR (Passive Infrared + Microwave) –to HAI 68 Windows – round inset Magnet - to HAI 7 Doors – round inset Magnet- to HAI @500 Lights, 130 Insteon Dimmers- to Mac 3 Cameras – Logitech, Apple, Sony- USB, Firewire, Cat 5e 8 Mikes – via Shure Mixer - Toslink Minijack to Mac 1 RFID – Texas Instruments - RS-232-C to Mac 1 Phidget RFID Reader- USB to Mac iRTrans Infrared Controller.- to Mac TVs, Music, Piano, Projector Screen- to Mac
13 Infrastructure – Computing. Ocelot (Applied Digital) low voltage switching (speaker & Mic switching Mac Mini - Primary Home Controller. Macbook - Development. iMac - Human Interfaces - Kitchen iMac - Human Interfaces - Office ThinkPad - Camera feeds to Mac. ThinkPad- Mouse Catcher & Camera feeds to Mac. PC- Athlon 64 bit. Windows, 8G, 2T – grunt work. (Deprecated) HAI Interfaces. MQ Interfaces. Music Server, Video Server. P390- CICS WebService interfaces (Deprecated May 2008).
14 Wireless. 2 x Apple Airport 802.11 n 1 x Airport Express 2 x Linksys 802.11 g 1 x Cantenna. Future. WiMax ZigBee Trick – give all the access points the same name and use the same channel number.
15 Infrastructure - Hardware
16 Infrastructure – Hardware.
18 RFID Hardware – Radio, Antenna, Tags
19 RFID – how it works
20 RFID Issues
21 RFID Interface Coding (Applescript)
22 MySQL & Scripting Other Applications
23 Scripting Other Applications Remotely.
24 Human Interfaces
25 Web Interfaces
26 Interfaces iPhone (Safari, Mobile) Any Browser Any Phone Handset Voice Recognition Hard Wired Mics Voice Response V1 Female V2 Male & Female PIR Event (with Weight ) RFID Events Camera Motion events
28 Enterprise Service Bus – (Indigo Broker - AppleScript & Apple Remote Events for Messaging) Monitoring Security Enterprise Services. JSON – XML-RPC SOAP
29 Internal Services Door Camera Motion Service Door RFID Event Service Door Opened Service Door Closed Service Speak Weather Service Somebody Pressed the Doorbell Service Switch TV to view Camera Play Music Service(s). Pub Services (Open etc) Goodnight Service Goodmorning Service Birthday Service Water the Lawn Service Open the Windows Service Close the Windows Service Play a Movie Service Mouse Down Service
30 Event Based Computing – Mouse Down. Metal Pad under Cheese – Soldered to 1 Wire. 2nd Wire Soldered to Spring Holder. Circuit Closes == Mouse Down Event. Video Taken by Evocam (last Video) sent to YouTube – Text Message to look at YouTube sent to iPhone. Insteon EZIO. e.g. Speaker Wire
31 External Services NOAA – Weather (Free). Also Weather.com Change Sunset based on light level (sunny, cloudy etc). Control sprinklers – predict rainfall. Set variables for spoken responses. Google – GMAPs. Locate Family (iPhone Application – Objective C) Airline – Flight Scheduling. Heat and Light services at odd hours. eBay – Snipe Screen scaping to feed sniping service.
32 WMQ-Broker Usage – Deprecated. Interface between Macs and PCs. – REST from PhP AJAX Sometimes, good enough really is good enough Interface to External Web Services. Interfaces requiring data transformation. PhP interface to Broker from Mac using REST Client for: Broker Web Service call to NOAA (Weather) parse response. Broker decides if its raining for Sprinkler via Timer Node. Broker makes web service call to Charter.net (whats on TV).
34 Security Assume the worst. No DHCP. No broadcast SSID. Hard coded router tables. WPA. IBM Generated Passwords.
35 Security UPnP
36 Software & Shelfware
37 Shelfware Evocam – Mac – 84% CPU Utilization. HAL 2000 - PC – Too Complex. XCode - Mac(except for iPhone)- PhP easier. WMQ Client for Mac- Only C Bindings - REST WMQ Server for Mac- Kernel Changes - REST RS-232-C Open Source PC- Too Complex. TI RFID Sample Code PC- Useless.
38 Motion detection CPU Utilization.
39 Software Indigo (ESB) Applescript Apple Remote Events Dreamweaver (Web, PhP) Photoshop Chicken of the VNC MAMP, WAMP Transmit (FTP) iRed Time Machine (Backup)
40 Lessons Learned Most of the work you need for an SOA/ESB is building the INFRASTRUCTURE to support it. Adding Services is trivial once the Infrastructure is there. Swapping out services is trivial – e.g. Texas Instruments RFID to Phidget RFID Reader – about an hour. You need a development hardware environment and prod – trying to do it via VNC is like trying to swim through an ocean of Peanut Butter. PhP, MySQL, Apache, OpenSource is easy to write & use. Remember when programming was fun ? – its back.
41 URLs to get you started. www.smarthome.com Source for Everything. www.smarthome.com www.perceptiveautomation.com Indigo Software. www.perceptiveautomation.com www.trossenrobotics.comRFID Reader. www.trossenrobotics.com www.evological.comCamera Software. www.evological.com http://www.james.lipsit.com/home.htm Site that got me started. http://www.james.lipsit.com/home.htm www.gulfhill.comMy House. www.gulfhill.com Send me an email – email@example.com