
University of Huddersfield RepositoryWaddington, JonDesign of an information system to provide home control for the elderly and disabledOriginal Citat
Jon Waddington92 Review of Current TechnologyHome automation refers to devices which are used to control elements in the home,either remotely or autom
Jon Waddington99y := $99text.xy(16, 3) 'show set year in whitetext.colour(0)text.dec(y>>4 & $0F)text.dec(y & $0F)s
Jon Waddington100text.out($20) 'spacetext.dec(date>>4 & $03) 'display the 10s of datetext.dec(date & $0F) &
Jon Waddington101PRI getyear : yy := i2c.getbyte($A3, $08)PRI settime (h, m, s)h := ((h/10) << 4) + h//10m := ((m/10) << 4) + m//10s := ((
Jon Waddington102Genrc5''IR-Receiver (RC5)VARlong rc5 'rc5 code received'byte flagPUB init (pin){{Launch cog to detect R
Jon Waddington103sub half, start 'half - start = start pulse length, should be about 71120 (80MHz * 889us)cmp lh, half
Jon Waddington104X10{{hA = %0110hB = %1110hC = %0010hD = %1010hE = %0001hF = %1001hG = %0101hH = %1101hI = %0111hJ = %1111hK = %0011hL = %1011hM = %00
Jon Waddington105VARbyte housecodebyte codeOBJserial : "simple_Serial"PUB init(rx, tx, house){initialise X10 house code and serial communica
Jon Waddington10familiar with computers and the interface is not aimed specifically aimed at them. Ahome automation setup using this software would al
Jon Waddington11for a microcontroller to control the display.The Parallax Propeller is a microcontroller which contains an internal font ROM and iscap
Jon Waddington123 Design of the Information SystemThe central component of the Information System is the Propeller chip. This is connectedto all the s
Jon Waddington133.1 The Parallax PropellerThe Parallax Propeller is a powerful chip capable of high speed processing (up to 80MHz).The chip has eight
Jon Waddington143.1.1 Propeller Demo BoardThe Propeller demo board is a prototype board for the Propeller chip. It includes aPropeller chip, connected
Jon Waddington153.1.2 Propeller SoftwareTwo pieces of software were used with the Propeller chip. These were the Propeller Tooland the Parallax Serial
Jon Waddington163.1.2.2 Parallax Serial TerminalThe Parallax Serial Terminal is a piece of software which can help when debugging aprogram. The Propel
Jon Waddington173.2 PAL VideoVideo signals are displayed on a television screen by drawing each line from left to right,from top to bottom. The amplit
Jon Waddington18Interlaced video means that two fields of alternate lines are drawn and interleaved toshow a single frame. This means that there are t
DESIGN OF AN INFORMATION SYSTEM TO PROVIDE HOME CONTROL FOR THE ELDERLYAND DISABLEDJON WADDINGTONA thesis submitted to the University of Huddersfield
Jon Waddington193.2.1 TV CirtcuitEach cog of the Propeller has an integrated video generator that makes generating videosignals possible. Access and c
Jon Waddington203.3 Menu SystemA menu is displayed on the television which shows four items for the user to choosefrom. Navigation of the menu is done
Jon Waddington212 : text.str(string($0A,7,$0B,5,"1."))text.str(string($0A,7,$0B,7,"2."))text.str(string($0A,7,$0B,9,"> &qu
Jon Waddington223.4 Home AutomationThe first item, “Home Automation”, allows the user to directly control the X10 devices. Afull list of devices in th
Jon Waddington233.4.2 Serial InterfaceThe CM12 X10 controller has a PC interface which uses RS232 serial communications.The controller generates X10 s
Jon Waddington243.4.3 CM12 ProtocolThe serial communications protocol for the CM12 states that the baud rate is 4800 bitsper second (bps). There is a
Jon Waddington25contain the house code and the 4 least significant bits contain the device code or thefunction code.The checksum is calculated by calc
Jon Waddington26House CodesH1H2H4H8A0110B1110C0010D1010E0001F1001G0101H1101I0111J1111K0011L1011M0000N1000O0100P1100Address CodesD1D2D4D810110211103001
Jon Waddington273.5 TemperatureThe “Temperature” item displays the inside and outside temperatures in Celsius on thescreen until the user wishes to re
Jon Waddington28480µs. This is the Reset pulse. The Propeller then releases the bus to be pulled high bythe 4.7kΩ resistor. The DS18B20 responds to th
Jon Waddington2ContentsAbstract ... 51 Intro
Jon Waddington29After the Propeller issues a Read time slot, the bus is released. The DS18B20 can thenleave the bus to go high to transmit a ‘1’ or pu
Jon Waddington30Bits 11 to 15 are the sign bits. These define whether the temperature is positive ornegative. If it’s positive, these bits will be log
Jon Waddington31pulse, followed by the “Skip ROM” command. This skips the ROM transmission and thecode then transmits the “ConvertT” command which not
Jon Waddington32'' Show the temperaturetc <<= 16 ‘shift left 16 bitsif (tc < 0) ‘check temperature signtext.str(string("-"
Jon Waddington33The remote XBEE module is loaded with the router firmware. It samples the ADC pin andtransmits the sample to the receiving module. The
Jon Waddington34ATID is the PAN ID address which is, essentially, the address of the network. The routerand coordinator XBEE modules share this addres
Jon Waddington35API (Application Programming Interface) operations are used for the communications,meaning that packets of information are sent which
Jon Waddington36AnalogueChannel MaskDigital SamplesAnalogueSamplesChecksumThe analogue channel mask indicates which analogue inputswere sampled.This c
Jon Waddington37The received sample is extracted from the API packet and then converted into a voltageusing the following formula [35].( )= ∙ 1200 (3.
Jon Waddington383.7 X10 SettingsAdding and removing X10 devices from the information system can be done in “X10Settings”. When adding a device, the us
Jon Waddington33.9 Infra-red Remote Controller ... 473.9.1 IR receiver ...
Jon Waddington39The code below shows how the name of a device is input with the remote control.PRI rcname_in(i) | j, t, xcode := 0 'flush codet :
Jon Waddington403.7.1 Memory backupI2C is also used by the Propeller to write to the memory in EEPROM. This can be used tobackup contents of the Prope
Jon Waddington413.8 SettingsThe fourth item allows the user to set the time and date using the remote control.3.8.1 Real Time ClockKeeping the date an
Jon Waddington423.8.2 I2CThe I2C bus allows for bi-directional communications using a Serial Data (SDA) line anda Serial Clock (SCL) line. Both of the
Jon Waddington43The address and contents of the registers are shown below in figure 3.8.2.1 [37].The values in the registers are in Binary Coded Decim
Jon Waddington44In this example, the Propeller transmits the Start Condition, followed by the readaddress for the PCF8563. An acknowledge bit is recei
Jon Waddington45The code first displays the time in white text and then the hours value changes to yellow,indicating to the user that this is the valu
Jon Waddington46PRI wait : c | m, i{{waits for key press while updating time}}rc.flush 'flush RC5m := getminute 'get minute valuerepeat unti
Jon Waddington473.9 Infra-red Remote ControllerInfra-red (IR) remote controls are commonly used to control home entertainmentsystems as they are simpl
Jon Waddington483.9.1 IR receiverThe Infra-Red receiver circuit is based on a Sharp GP1UX301QS IR receiver. The deviceis tuned to detect bursts of IR
Jon Waddington4Copyright Statementi. The author of this thesis (including any appendices and/or schedules to thisthesis) owns any copyright
Jon Waddington49The code below is written in PASM and decodes RC5 codes received at the Propellersinput pin.DATorg 0go mov addr, PARmov outmask, dira
Jon Waddington50quart long 0 'calculated 1/4 bit timetquart long 0 'calculated 3/4 bit timefull long 0 ‘calcul
Jon Waddington514 Evaluation of the Information SystemTo assess the functionality of the system, a series of tests were carried out. The testsincluded
Jon Waddington52The table below shows the corresponding timing measurements for the waveform infigure 4.1. The third column shows the difference from
Jon Waddington534.2 The User InterfaceFigure 4.2.1 shows a photograph of the main menu screen with the “Settings” itemselected. The date can be seen i
Jon Waddington54Figure 4.2.3 shows the name of the X10 device being entered as “123”. This is done viathe remote control as there is no keyboard detec
Jon Waddington55Figure 4.2.6 shows the X10 address of the device being entered. The address enteredwas “02”.The “Edit Device” item in the “X10 Setup”
Jon Waddington56Figure 4.2.9 shows the “Home Automation” menu. The “All Devices” option displays allthe X10 devices and the “List by room” option allo
Jon Waddington57Figure 4.2.12 shows the menu which prompts the user to select the required function forthe device, “123”. The options are to turn it o
Jon Waddington58Figure 4.2.15 shows the interface as the date is being set. In the picture, the day ishighlighted in yellow, indicating that this is t
Jon Waddington5AbstractThis report describes the development of an Information System which aids the elderlyand disabled perform home control.The Info
Jon Waddington594.3 Infra-red Remote ControllerThe waveform in figure 4.3 shows the input to the Propeller from the Infra-Red receiverwhen the ‘5’ but
Jon Waddington604.4 Temperature MeasurementThe picture in figure 4.4 shows the temperature menu, displaying both inside andoutside temperatures in deg
Jon Waddington61The propeller waits until the temperature conversion is complete by issuing read timeslots. The DS18B20 responds to this by transmitti
Jon Waddington62Figure 4.4.1.4 shows the transmission of the 8 most significant bits of the temperature.A reset pulse is then sent from the Propeller
Jon Waddington63In this example, the first two bytes are 0x00 and 0x12, meaning that there are 18 bytesof information to follow, excluding the checksu
Jon Waddington640 92 + 0 13 + 0 2 + 0 40 + 0 62 + 0 4 + 0 8 + 0 6 (4.4.2 - 3)+ 0 68 + 0 01 + 01 + 0 01 + 0 02 + 0 73 + 0 3 = 0 4Taking the lowest byte
Jon Waddington654.6 X10The testing of the X10 commands proved that they were reliable. The modulesperformed their required functions without a problem
Jon Waddington66Figure 4.7.2 shows the transmission of the register address of the minute register (0x03)being transmitted. This is the register of th
Jon Waddington67Figure 4.7.4shows the transmission of the PCF8563’s minute register to the Propeller’sinput pin. The value of the 7thbit is not used i
Jon Waddington684.9 EEPROM Memory UsageFigure 4.9 shows a screenshot of the program information which can be found bypressing F8 in the Propeller Tool
Jon Waddington61 IntroductionThe aim of this project is to design an information system which can provide homecontrol to the elderly and disabled to r
Jon Waddington695 ConclusionIn this report, an Information System has been designed to provide home control, and aprototype has been developed and con
Jon Waddington705.2 Installation/ImplementationTo install the Information System into a home, it should be placed near a television in asimilar way to
Jon Waddington715.4 Further WorkTo save battery life in the remote temperature sensor, the XBEE could be interruptdriven, so that while the temperatur
Jon Waddington72Another addition to the Information System could be to add sound. This could consist ofa notification sound when a button is pressed,
Jon Waddington736 References[1] George Demiris PhD, Marilytn J. Rantz PhD, RN, Marjorie Skubic PhD, Myra A. AudPhD, RNn Harry W. Tyrer Jr PhD, “Home B
Jon Waddington74[11]HomeSeer Wiki contributors, 2010, August, “HomeSeer HS2”, [Online] Available:http://www.homeseer.com/wiki/index.php/HomeSeer_HS2,
Jon Waddington75[20] Digi International, “XBee® & XBee-PRO® ZB ZigBee® PRO RF Modules”, [Online],Available: http://www.digi.com/products/wireless/
Jon Waddington76[32] Marmitek, “Interface Communication Protocol”, [Online], Available:http://www.marmitek.com/en/download/software/cm11_x10_protocol_
Jon Waddington77[43] UK Automation, “Marmitek Easyouch Panel10”, [Online], Available: http://www.uk-automation.co.uk/marmitek-easytouch-panel10-p-1401
Jon Waddington787 Information System Source Code
Jon Waddington7with televisions for years.Ideally, no re-wiring should be needed, making the information system simple enough tobe installed and custo
Jon Waddington79Tv_Text_DemoCON_clkmode = xtal1 + pll16x_xinfreq = 5_000_000- 110hA = %0110hB = %1110hC = %0010hD = %1010hE = %0001hF = %1001hG = %010
Jon Waddington80up = 33 'RC5 code "channel up"down = 32 'RC5 code "channel down&q
Jon Waddington81i:=0repeatrc.flushtext.out($00)showdate(0, 0)showtime(35, 0)text.str(string(13," Information System"))text.str(strin
Jon Waddington82text.str(string($0A,5,$0B,8," "))1 : text.str(string($0A,5,$0B,4," "))text.str(string($0A,5,$0B,6,">"
Jon Waddington83PRI DisplayRoom(r) | dp, j, i, n{{still needs work}}text.out($00)showdate(0, 0)showtime(35, 0)dp := 0case r0 : text.str(string(13,&quo
Jon Waddington84dp--devcom(dp)PRI AllDevices | dp, j, i{{Method displays all devices}}sel := 0dp := 0text.out($00)showdate(0, 0)showtime(35, 0)text.st
Jon Waddington85showdate(0, 0)showtime(35, 0)text.str(string(" "))repeat i from (dp*10) to ((dp*10) + 9)if name[i]text.out(name[i])elsei
Jon Waddington86rc.flushrcflag := rc.gettogglerepeat until (rc.gettoggle <> rcflag) & ((rc.getcommand =>0) & (rc.getcommand =<9))
Jon Waddington87temp := readtc ' read the temperatureshowc(temp)
Jon Waddington88tempout := 0repeat bit from 18 to 19tempout += XB.dtset(bit)if bit == 18tempout <<= 8if (tempout < 10000)text.dec((((tempout*
Jon Waddington8assistance from friends, family or professionals. The aim is to aid the user with simple,repetitive tasks, reducing the required person
Jon Waddington89keyName_in(i)elsercName_in(i)Room_in(j)Type_in(j)Address_in(j)waitcnt (cnt + 50_000_000){{test input}}text.out($00)showdate(0, 0)showt
Jon Waddington90text.out(name[i])elsei := (dp * 10) + 9dp++rc.flushsel := 0code := 0repeat until (code == enter)text.xy(2, 2)text.str(string(" &
Jon Waddington91text.dec(dvc[dp])text.str(string(13," Delete"))code := 0repeat until code == entercase sel0 : text.str(string($0A,1,$0B,1,
Jon Waddington92'rc.flushe := in.newkeyif e <> $0Dtext.out(e)name[i] := ei++in.stopPRI rcname_in(i) | j, t, xcode := 0t := irepeat j from i
Jon Waddington93text.str(string($0A,13,$0B,6," "))text.str(string($0A,13,$0B,7,"> "))room[j] := selcode := waitif (code == up)
Jon Waddington94case dvc[j]1 : addr[j] := d12 : addr[j] := d23 : addr[j] := d34 : addr[j] := d45 : addr[j] := d56 : addr[j] := d67 : addr[j] :=
Jon Waddington95if (code == down)sel := --sel <# 2code := 0case sel0 : sett1 : setdsel := 3PRI sett | h, m{{shows the set time menu}}text.out($00)
Jon Waddington96rc.flushif code == down 'increment minute++mif (m & $0F) => 10m &= $70m += 16if (m & $7F) => $60
Jon Waddington97text.xy(3, 3) 'move text cursor to X, Ytext.colour(0) 'set text colour to whitecase day
Jon Waddington988 : text.str(string("Aug"))9 : text.str(string("Sep"))10 : text.str(string("Oct"))11 : text.str(string(&
Comentarios a estos manuales