Using the Joomla Framework for Internet of Things (IoT) Case for Lighting Control

Download Using the Joomla Framework for Internet of Things (IoT) Case for Lighting Control

Post on 21-Apr-2017



Devices & Hardware

0 download


Building a LCMS with the Joomla Frameworkthe internet of things & JoomlaParth LawateStrategic Marketing Manger JoomlaCEO, Techjoomla, Tekdi Web Solutions@parthlawate, @techjoomlawww.techjoomla.comCookBookworm GardenerJUG PuneJoomla FreakTrekking EntrepreneurJoomla Day IndiaOpen SourceSoftware ArchitechtMarketingContent StrategyHikingTekdi Web Solutions @tekdinettekdi.netIOS AppsCRMMagentoE Learning EcommerceJoomlaCustom AppsAndroidCMSHTML5Social NetworksTechjoomla. For All things Joomla @techjoomlatechjoomla.comjGivePeople SuggestjomLikeJTicketingJ!BoloBroadcast InvitexEmail BeautifierSocialAdsJ!MailAlertsREST APIPayments APISocial APIQuick2CartOur worst fears have come true !Another CMS on the Joomla Framework !!LCMSWhat's a LCMS ? How do I Build my Website with it ?LightingControlManagement SystemWhat does a LCMS do ? Device Management Device Grouping Scheduling Manufacturer Mgmt User Management Access Control Reports & AnalyticsWhy are they Used ? Control + Automation Intelligent scheduling Maximise energy savings Comply with Building & energy regulationsWhere are they used ? University Campuses Hotels Industries Street lighting Any situation where volume ligting is implementedWhat's a Web & Mobile Company doing in this space ?the key is to use our existing expertise in new areas of applicationEnter TechventuresEnventure Partners + Tekdi TechnologiesHardware + SoftwareWe're looking at making hardware integrations simpler by bringing web services into the picture. Less of embeded programming, more of webA Little Background Replacing Proprietery hardware with Open H/W solutions Replacing Proprietory LCMs built by Billion Challenges Control Thousands of devices Support Multiple transport protocols & formats Support new devices & retrofits Extremely light footprint Scale as neededSimplified RepresentationHTML5 Browser UIApplication Server+Web Services GatewayGatewayGatewayGatewayDEVICESBaseArchitectureDevice Drivers ( LED lights/Motors/ Air Conditioning etc)Device SubnetLCMS Backend on Joomla FWLAMP StackJSON over XMPP/HTTPWebservices JSON over XMPP/HTTPHTML5 Browser UI Mobile App/resource-id/action/value || ds344/dim/10JSON over Power line / Wireless/ Zigby/Bluetooth ControllerDBDevice GatewayRaspberry PisCloud/Hosted WebserverCurrently Hosted on Pi #PythonThe Blue BoxThe Joomla Framework (Bluebox) is being used as a Cloud based server that communicates to several "gateways"LCMS Backend on Joomla FWLAMP StackThe Green BoxCurrently running Raspberry Pi's for the gateways running python among other things for the application codeDevice SubnetControllerDBMulti GatewayAccess PtControllerJSON over Power line / Wireless/ Zigby Blue BoxAccess PtControllerAccess PtControllerHorizontal scaling for volume is achieved by adding more gateways to the networkThe Framework AppJoomla Frameworkxmpphp package packageTwig packageAPIs with the Framework The Framework app outputs both human consumable views as well as Web Services Currently we are using only the WebservicesThe App in ActionHTML5 Web App working off Framework WebservicesPolling based Device Discovery Imaging you have Building with 1000 lights installed on various floors Auto Discovery via polling lets the system 'auto discover' devices connected to that g/wDiscover available services Discover the services supported by the devices via polling In case of lights it can be ON/OFF/DIM Depending on device type this can varyGroup the Devices Managing one by Sucks ! Group devices into logical groups You can create as many groups as you want & assign devices to groups Each device can be in multiple functional groups. - Eg: 1 group perstorey, decorative & functional light groups etcScheduling Create schedules and automate Schedule for individuals or groups Eg: Dim porch lights at 6am, Turn off porch lights at 9am.Override when neededEach device's state can also be overridden, which will override it's state defined by a schedule.Device MappingMaps Integration for mapping devicesUser ManagementManage Users, Grant access, delegate responsobility. Multiple transport options for G/ws Choose to Connect gateways via different transport methods Choose between XMPP or COAP*Constrained Application Protocol (CoAP) is a software protocol intended to be used in very simple electronics devices that allows them to communicate interactively over the Internet. Device Asset & Manufacturer mgmtMakes it easier to manage devices & warranties as well as maintainance from multiple manufactures with asset management done via the same unified system.Before > AfterA look at the Prototype Working Prototype hardware with live demo launched ! Production devices go live very soon !J! Framework Contributions Full CRUD Example with Add/Edit/List Views & REST Webservices Router that simplifies RESTful URLs Else ? What Next ?The Internet of Things (IoT) LCMS Is a sub case IoT The Infrastructure for LCMS can be used many many IoT applications The Infrastructure is completely scalable both from a hardware & software perspectiveM2M & M2E CommunicationsThe architechture allows for Machine to machine connectivity as well as Machine to Enterprise communicationsTerm Glossary API - Application Programing Interface LCMS - Lighting control Management System XMPP - Extensible Messaging and Presence Protocol is a communications protocol for message oriented middleware base protocol based on XML(Extensible Markup Language). The protocol was originally named Jabber. RPi - Raspberry pi COAP - Constrained Application Protocol (CoAP) is a software protocol intended to be used in very simple electronics devices that allows them to communicate interactively over the Internet. Thank You ! Questions ? Interested in an implementation like this or anything that deals with intesting web/mobile/hardware mashups ? Drop us an email ! Twitter @techjoomla | @parthlawatemailto:contact@techjoomla.com 1Slide 2Slide 3Slide 4Slide 5Slide 6Slide 7Slide 8Slide 9Slide 10Slide 11Slide 12Slide 13Slide 14Slide 15Slide 16Slide 17Slide 18Slide 19Slide 20Slide 21Slide 22Slide 23Slide 24Slide 25Slide 26Slide 27Slide 28Slide 29Slide 30Slide 31Slide 32Slide 33Slide 34Slide 35Slide 36Slide 37Slide 38Slide 39Slide 40


View more >