DALI Device Addressing Method & Software 1.0 Field of the Invention
The present invention relates to addressing of Digital Addressable Lighting Interface (DALI) devices, in a particular form, the present invention relates to a method as well as supporting firmware and software for use in addressing devices on a DALI line.
2,0 Background of the Invention DALI is a lighting protocol that allows for the monitoring and control of specific devices which might, for example, comprise a lighting system. Such devices indude such things as light emitting diodes (LEDs), emergency lights, sensors, ballasts for luminaires, fans and birnds. In addition to controlling these devices individually, DALI allows for these devices to be grouped, and controlled by broadcast individual address and or by group with groups normally assigned by address, thus generally requiring an address in order to add devices to groups. Pursuant to the open standard defined in the DALI Standard published as IEC 62386, a limit of sixty-four DALI compliant devices may be supported by a single DALI data bus. A DALI interface comprises a two wire data bus with electrical characteristics and this data bus .is referred to as a line or an interface. A DALI line is powered by a DALI power supply with DC voltage between 11.5VDC and 22.5VDC at idle high; DALI communication between devices and controllers is achieved by shorting this powered line using Manchester encoding and such shorting is limited pursuant to the DALI standard to a maximum of two hundred and fifty milliamps. DALI compliant devices generate a twenty-four bit pseudo-random address upon instruction by a randomise command. Although all DALI devices on a DALI line will concurrently act on DALI broadcast commands without commissioning, if specific DALI devices need to be controlled and/or monitored, they must be given a six bit Short Address, The DALI Standard allows for two forms of Short Addressing with one form assigning a "Random* Short Address end the other assigning a specific short address by a method known as Physical Addressing. A "Random" Snort Address is a unique six bit number, between zero and sixty-three, that is allocated to DALI devices by transmitting the appropriate short address commands to the DALI devices as set out in the DALI standard. This number is randomly allocated in the sense that the DALI devices will likely be addressed in an illogical or random order. For instance, if a row of ten DALI devices were Installed, it will typically be the case that they should be addressed sequentially and that these addresses will usually be shown on a lighting plan and such an ordered and/or planned set of addresses is referred to as 'logical' addresses in order to distinguish them from 'random' addresses. However, with short addressing, the allocation of the short address
will always be based upon its random long address, thus making the short address also effectively random, for example one of the devices may be assigned address ten, whilst the adjacent lights to either side of the device which have been assigned address ten are themselves addressed as sixty and four respectively, whereas the addresses for lights adjacent to address ten might logically need to be nine and eleven. Therefore, the installer wiR then have to remap the random address of each DALI device such as sixty, four and ten in the example, in order to give them their logical address* The alternative method to the pseudo-random address method is known as physical addressing and it is less common than random short addressing as it is generally more time consuming for an installer. As the term physical addressing suggests, such a method requires an installer to physically access each device individually in order for it to be logically addressed.
Both random short addressing and physical addressing may be executed using a suitable DALI commissioning tool, such as the patent applicant's 'ADDICT' device. This patent addresses a novel method of addressing DALidevices.
3.0 Summary The current methods of addressing DALI devices are flawed in that they are more time consuming and are thus more expensive to achieve than this claimed invention and this invention requires only a logic control device and a DALi Control Device both with the invention installed and interconnected by an intranet whereas other methods require additional intermediary devices and/or steps.
Physical addressing is time consuming for installers as it requires physical access to each of the DALI devices that are to be addressed in order to provide them their unique six bit address enumerated in a range between zero and sixty-three. One such method of physically addressing devices is to connect a purpose built commissioning tool to the device either directly or by connection to the DALI line on which the devices are interconnected and then following prompts to remove a load that is normally a lamp from the load side of the device and then when prompted to do so restore the load. This method would then have to be repeated up to sixty-four times for a single DALI line, multiplied by the number of DALI lines that are required to be commissioned for a project, which may be any number of DALI lines, making it more time-consuming than alternative methods. Remapping random short addresses In a manner that does not use physical addressing Is the more widely practiced method of addressing as it is less time consuming than physical addressing methods; this method that is commonly used to achieve logical addressing may use purpose built commissioning tools or DALi control devices to remap addresses, however this will typically require more than one individual to be working on addressing the devices in order to determine the location of the device to
be remapped to a logical address, or it may be achieved with a single person but to do so will require the use of expensive and cumbersome methods comprising purpose built commissioning tools that interface with a DALI controller through Intermediary devices such as radio modems and in such a case that one person will usually need to constantly refer to the lighting plan and to the DALI devices to determined which DALI device, usually a lumlnaire, has which random address and requires which logical address.
Figure 1 shows an example of remapping addresses from random short addresses to their logical addresses that require mare than one installer: one installer 100 must physically walk to each device and communicate with the second installer 102 when the device 110 to be remapped visually or otherwise indicates that it has been selected by the second installer The second installer is positioned at a location remote from the first installer, typically at a switchboard or anywhere that the DALI line Is accessible which position may well not be in line of sight of the DALI devices 105 - 110, and this second installer will be communicating with the DALI devices by means of a suitable commissioning tool or DALI control device for the purpose of selecting sequentially the random short addresses of DALI devices on the line. This second installer will typically select the target DALI device to be remapped to a more logical address by means of sequentially stepping through the short addresses which causes each DALI device to visually or otherwise indicate themselves by means of an 'identify command or by means of illuminating only, or more brightly, the selected device address, until the device targeted by the first installer is found at which time the first installer will typically communicate with the second installer to advise that the targeted device has indeed been found, so that the second installer may then remap the device to its logical address. When considered from an economic perspective, the current methods of addressing are costly in that they require more man-hours when directly compared to the more efficient approach of the claimed invention. 4.0 Brief Statement of the inventi on
The invention in various embodiments provides one or more of the following benefits: faster addressing times, visual indication of addresses that remain to be addressed, visual indication of device selected to be addressed, visual indication of successful addressing, ability to assign specific ranges of logical short addresses, ability to detect and address new devices. These benefits are achieved by implementing novel software programs onto a Logic Computing Device, and novel firmware onto a DALI Control Device; the DALI Control Device being a device that is capable of communicating and receiving DALI signals in combination with either an integral or external DALI
power supply; the Logic Computing Device being any form of computing device running operating systems such as Android, iOS, OS, Linux, UNIX, Windows Mobile or Windows; the Logic Computing Device and the DALI Control Device communicating via a standard intranet such as a WlAN or hard wired methods such as Ethernet In essence, the invention is a combination of methods of assigning DALI addresses to DALI devices, using DALI Control Devices, as well as consumer computing devices such as smart phones, tablets, personal computers and laptops, instead of previously existing commissioning tools and software. Using the invention instead of such commissioning tools and software will help make a commissioning process more user friendly and less expensive. The invention will allow for addressing commands to be sent from either a DALI Control Device, or from devices such as smart phones, tablets, personal computers and laptops via a DALI Control Device. A typical sequence of functions to be carried out as part of the invention is given below, it must be noted, as will become evident, that this sequence of steps need not be adhered to. This sequence of steps is given purely for illustrative purposes. As is used hereinafter, to "flash", or "flashing" will refer generally to a DALI device, typically a light source such as a luminaire, preferably changing from a bright state to a dim state one or more times, although it is understood that alternative methods of indication such as audible signals, or substituting an off state for a dim state, may also be used.
The Logic Computing Device may execute the software and in doing so could generate a GUI for the user. The 6UI may provide the user with an option to start the process of addressing or remapping of DALI devices ort the DALI line. The Logic Computing Device may communicate the user's actions to the DALI Control Device over an intranet. The DALI Control Device may communicate the user's actions to the DALI devices. The DALI Control Device may instruct each device that exists within a DALI network to 'flash' or otherwise indicate their selection in the order of their current short address. The software contained on the Logic Computing Device may provide the user the option to confirm that the next DALI device that they wish to remap to a logical address has been flashed. The firmware contained on the DALI Control Device may receive Such a command from the user's Logic Computing Device, and communicate this to the DALI device by means of DALI commands that allow short addresses to be remapped being communicated to the DALI device, thus successfully assigning a logical short address to the DALI device. A further aid for understanding how the various embodiments interoperate to achieve the desired, useful results is given in Figure 2. It must be noted that this is an example of one known method of achieving the desired, useful results, but is not assumed to be the only method. A Logic Computing Device will send a command to the DALI Control Device to start either the outer loop, or inner loop.
Outer loop' and 'inner loop' are described In depth in the detailed description of the invention. If the outer loop command is sent, the program will determine whether the program has been before since the program was executed, if it is the first time running the program, all devices will be counted. The DALI Control Device will then determine whether the user is attempting to assign an address. If the user is assigning an address, the address will be remapped and the variables updated. If not, the DALI Control Device will determine whether there are fewer than five devices remaining on the DALI line. If there are fewer than five DALI devices remaining on the DALI line, the inner loop will be executed. If there are five or more DALI devices remaining on the DALI line, the outer loop will he run end the DALI Control Device will reply to the Logic Computing Device that the outer loop is being run and the process will restart, if the user, instead of sending an outer loop command, sends an inner loop command, the inner loop will be run, the DALI Control Device w!l! reply to the Logic Computing Device that the inner loop is being run and the process will restart, if the Logic Computing Device sends a confirm command, the confirm loop, described in depth in the detailed description of the invention, will run. Further features of the invention, and the advantages offered thereby, are subsequently explained in greater detail hereinafter, with reference being made to specific embodiments illustrated in accompanying drawings.
5.0 Detailed Description
The present invention will now be described in more detail with reference to exemplary embodiments as shown in the accompanying drawings. White the present invention is described herein with reference to the exemplary embodiments, it should be understood that the present invention is not limited to such exemplary embodiments. Those possessing ordinary skill in the art and having access to the teachings herein will recognize additional implementations, modifications, and embodiments, as well as other applications for use of the invention, which are fully contemplated herein as within the scope of the present Invention as disclosed and claimed herein, and with respect to which the present invention could be of significant utility. Where useful, variations on the embodiments are proposed, but this Is not to be taken as a limitation on the possible number of variations of such embodiments. Rather, such variations are given as a useful aid for the reader. With reference to Figure 3, an exemplary set of components typical to a DALI commissioning process using the invention is illustrated generally as including a smartphone and/or tablet computing device with the Invention installed 300 A, a wireless network 302 B, DALI Control Device with the invention installed 304 C, and DAll devices, such as lights 306 D. In a preferred embodiment the invention would include an aigorithmicaliy implemented method for displaying the devices on a DALI line that are yet to be assigned a logical short address. This method is illustrated in Figure 4, and is referred to as the 'outer loop'. 'Outer loop' refers to the process of flashing all DALI devices that remain to be assigned a logicaf short address that may be found on a DALI line in the sequential order of their random address or previously assigned address. As is illustrated in Figure 4, a device 400 with the lowest remaining short address (whether that short address is random or logical) will be flashed for a period of five hundred mil liseconds, before the next device 302 is flashed. All remaining devices 404 - 412. will be flashed until the user 414 signifies that the device that they wish to address has just recently been flashed by pressing a button generated in the graphical user interface (GUI) on the Logic Computing Device 416. If the user does rut press the generated button, the outer loop will repeat until such time as tine user interrupts the process. This method is advantageous as it provides a visual indicator as to which DALI devices are yet to receive their short address. The size of the outer loop will always reduce by the number of devices assigned a logical short address. For example, if there are fifty-six devices on a line, then the first time the algorithm is run in the addressing session, the outer loop will run through all fifty-six devices. When the user assigns a short address to a device, then there will be fifty-five remaining devices that are flashed as part of the outer loop. This is advantageous as it allows the addressing process to
continuously become faster as the numerical size of the set of DALI devices in the outer loop reduces. An addressing session is started each time the program is executed. The algorithm is not concerned whether the user has used the claimed methods for addressing devices at a prior point in time. Rather, the algorithm is concerned whether the user has addressed devices since the last time the program was executed.
Of course, it is recognised that (ess novel methods may also be implemented to display or otherwise indicate the target devices that are to be remapped to logical addresses. For instance, a method invented almost a decade ago by the applicant for use in the applicant's ADDICT DALI commissioning tool and used for the purpose of remapping random long addresses to short addresses that are effectively random does so by means of the applicant's algorithm that isolates a single long address by checking half of a set of all possible iong addresses for a single long address and if more than one long address is found the algorithm will halve the set of possible long addresses into a set one quarter the sire of the original set and again seek a single long address and if more than one long address, ts again found the algorithm: will halve again this quarter set of possible long addresses into a set one eighth the size of the original set and will continue this process until a single long address is found, the first of which will be assigned to short address zero, followed by the next single long address being remapped to short address 1 and so on. An obvious adaptation to this method would therefore be to employ it as a method of remapping random short addresses to logical short addresses by similarly halving the set of random short addresses and visually or otherwise indicating whether or not the target device is in the selected set of random short addresses and if it is in the selected set, by halving that set again to visually indicate whether it is in the halved set or not and so on until the single target short address is the only address in any reduced set. if any set did not include the target then the method would be capable Of simply and automatically deducing that the target is in the excluded set and would then indicate the previously excluded set being the set to which the target belongs before halving that set and so on until the single target short address is the only address in the reduced set. it is preferable, but not essential, for the outer loop to be carried out aigorithmically in the method depicted in Figure 4. A one or more bit signal is sent from a Logic Computing Device to a DALI Control Device to initiate the process. Alternatively, the user inputs a command directly via an interface on the DALI Control Device. The outer loop will set the device with the first random short address to go to its DALI Maximum (brightest intensity for two hundred and fifty milliseconds before sending a DALI Minimum (lowest. intensity) command to that same device to go to its lowest dimmed intensity. The DALI Control Device will then increment to the next address at which time it will determine whether
any command has been received from a suitable Logic Computing Device to initiate the inner loop. If such a command is received, the inner loop, described in more detail below, will begin to run. if no such command has been received, the outer loop will continue. Another preferred embodiment of the invention might allow for Logic Computing Devices with inbuilt accelerometers and/or gyroscopes, such as smartphones, tablets and wearable electronics (e.g. Android Wear products, such as a 'smart* watch or other wearable computer or electronic device), to communicate with a DALI Control Device provided a threshold acceleration is created by the user moving such Logic Computing Device. An example of how this could work in the context of addressing DALI devices is depicted iri Figure 6. An Android Wear device 600 is worn on a user's wrist. the user makes a movement of their wrist 602, which is calculated by an accelerometer in the Android Wear device. The software installed on the Android Wear device 600 recognises this movement and reads this as a trigger to send data over a wireless network 604 which forms the intranet 612 to the DALI Control Device £06 and onto a DALI Device 608 via a DALI cable 6i0> The commands sent to the DALI Control Device might be, for example, a command to start the inner loop (described below), or the outer loop, or to confirm that the target device has been visually indicated during an outer or inner loop, but not necessarily limited to these functions, it is recognised that the Logic Computing Devices need not necessarily take advantage of any accelerometer or gyroscope present within the device, and could be triggered to send commands over an intranet such as a wireless network in less novel ways, such as by a button press from a physical and/or virtual button. A virtual button might be created as part of a GUI on a Logic Computing Device. Another preferred embodiment of the invention may be an algorithmically implemented method of displaying what is referred to herein as the 'inner loop'. The Inner toop' may be a process of flashing DALI devices at a slower pace than they would be flashed during the outer loop, with such reduction in pace aiding the user's confirmation of the device to be remapped as having been flashed. The inner loop could possibly be initiated and sustained in the way depicted by Figure 7. As depicted in Figure 6 a user714 will observe the DALI devices 700 to 712 flashing as part of the outer loop. The user, typically known as a 'systems integrator' waits until the target device 712, typically a light that they wish to address, has flashed, at which point they will press a button generated on the GUI on the Logic Computing Device 716. This button press may cause the two prior devices 708 and 710 that were flashed as part of the outer loop to be included in the inner loop, in addition to the device 712 that was flashed at the time the user pressed the button and the device 700 that would have been flashed next Ideally, this button press will cause the Logic Computing Device to transmit a signal to the DALI
Control Device that the DALI Control Device can recognise as an instruction to sequence through flashing the two devices that were flashed prior to the button press, with such sequence preferably but not necessarily at a slower pace than the outer loop, and any device that was visually or otherwise indicated at the time the button was pressed. The systems integrator may wait until the device that they wish to address has flashed, at which point they may press again the same button previously referred to. It is preferable, but not essential, for the inner loop to be carried out a!gorithmically in the method depicted in Figure 8. The inner loop begins when it is initiated by a button press during the execution of the outer loop. The algorithm will then determine If the difference between the address that was flashed and the loop size (which is three by default as addresses start at zero) is less than the lowest available address to be assigned. If this is the case, then the algorithm may calculate the starting address of the inner loop with the following function: 1 + Maximum Upper Address + Current Address - Lowest Available Address -
Loop count
For example, if there are fifty-eight addresses, arid five addresses have already been assigned, end address six was flashed when the inner loop was Initiated, the algorithm will calculate 1 + 58 + 6 - 3 = 57* Therefore, the Inner loop wilt start at address fift y-seven, and end at address seven. Starting at address fifty-seven, the address will be sent a DALI Maximum command. There will be a five hundred millisecond delay before that same address is sent a DALI Minimum command. If the user does not send any confirmation signal, the loop counter will be decremented by one to reflect that one address has been flashed and the user has not responded. This process will repeat until the loop counter reaches zero. When this occurs, the loop counter is reset to four, the process is ended and the inner loop shall restart. Another embodiment of the preferred invention may be an algorithmically implemented method of displaying the inner loop where there are four or fewer devices remaining to be addressed on a single DALI line. Where there are four or fewer addresses remaining to be assigned to & logical short address, the inner loop would ideally run without returning to the outer loop after a logical short address has been assigned. For example, if there are five devices to be addressed on a DALI line, and one of those five devices is addressed, instead of returning to the outer loop, the invention will immediately terminate the outer loop and commence running the inner loop. This feature is advantageous as it avoids unnecessarily returning to the outer loop when the inner loop witf always contain four devices.
it is recognised, however, that a different number of devices could be set as the number of devices to be displayed as part of the inner loop. For instance, five or six devices may be used instead. Four devices has proven to be the most advantageous number of devices to use, although it is obvious more or less could be used as part of the inner loop. An option to select the number of devices to use as part of the inner loop forms the next embodiment discussed below. fn another embodiment there may be an algorithmically implemented method of specifying how many devices are to be displayed as part of the inner loop. The default number of devices to be displayed is four, however more or fewer devices could be chosen by the user to be displayed as part of the inner loop. This is advantageous as it is recognised that reaction times differ among individuals. A person with slower than average reaction times may find it difficult to react fast enough to initiate the inner loop, thus requiring this further embodiment This embodiment could be implemented by providing in the GUI that is installed on a Logic Computing Device an option to specify the number of devices to be displayed as part of the inner loop. Then, when the inner loop commences as outlined above, the number of devices displayed as part of the inner loop will be the number of devices specified by the user. In another preferred embodiment of the Invention there may be an algorithmically implemented method of indicating to the user which target device has been selected to be addressed, but without actually remapping the address, so as to allow the user to verify that the device that is selected is definitely the device that they wish to address. This embodiment of the invention may provide such a visual indicator by flashing the currently selected device at a certain rate, whilst leaving all other devices on the line in a dimmed state, so as to accentuate the visibil ity of the flashing device. In another preferred embodiment of the invention there may be an algodthmi'caljy implemented method of providing visual feedback to a user to indicate that all devices on the line have been successfully remapped with a new short address. After the user has confirmed that the selected device is indeed the device to be remapped, and that device is the last device on the line to be assigned a logical short address since initiating the program, all devices could be flashed 2 times over 2 seconds to Indicate that all devices have been instructed to remap their short address as intended. In another embodiment, the invention may provide an algorithmically implemented method for determining whether a new DALI device has been added to the line, The best known method fordoing so is to include in the GUI, or similar commissioning tool, an option to scan the DALI line for new devices. When tills option is selected, the Logic Computing Device may instruct the DALI Control Device to calculate the difference between the current number of found devices and the number of
devices that were found the previous time that the devices were counted by the DALI Control Device. For example, 3 project currently has fifty eight devices installed onto a single DALI line, and they have all previously been assigned a logical short address, and three more DALI devices are subsequently installed. Assuming that the invention had previously been used to count all fifty eight devices, the DALI Control Device would recognise that there are now sixty one devices on the line, whereas previously, there were fifty eight, concluding that three new devices had been added at some point This method is advantageous as it allows for the set of devices to be remapped to be limited to only those devices that have not already been assigned a logical short address, therefore saving time. in another embodiment, the Invention may provide an aigorithmically implemented method for random addressing the newly installed devices. The best known method for achieving this result is to allocate within the firmware a buffer of memory to be used to allocate the state of the DALI devices. In this context, the "state" of a DALI device is dictated by whether or not that device has been addressed using the method disclosed in this patent. If a DALI device is addressed using this method, it will be assigned a one byte value to indicate that It has either had a logical short address assigned to it, or it has had no logical short address assigned to It, by means of standard DALI commands as set out In the DALI Standard. When the DALI Control Device returns to the Logic Computing Device the total number of newly found devices, it will then reference the buffer of values that indicate the state of the device. If the state of the device as indicated by the memory buffer Indicates that it is a device that is yet to be assigned a short address, then the devices will be random addressed by means of a DALI randomise command that will cause the new device to generate and store a random long address followed by commands to set the device to an unused short address that is effectively random. In the case that only one device is added to a previously addressed and remapped line, the user may be given the ability to 'set* the short address of the new device without first randomly addressing the device. in another embodiment the invention may include an aigorithmically implemented method of allowing the user to specify the number of devices that are connected to the DALI line. This could be achieved by providing the user a facility in the GUI to enter a number specifying the total number of devices that should be on the line or by providing this facility on a DALI line controller and/or power supply. This number could then be transmitted or entered into to a DALI Control Device. When the DALI Control Device receives this number, it could, at some later point in time, count the number of DALI devices on tile line by using the DALI 'query actual status' command. This command returns a one byte value indicating that the address contains a device. The DALI Control Device could then communicate with the user whether or not the correct number of devices were found which information may also communicate the difference between the number of devices specified by the user and the number of devices that were found by the DALI Control Device, with such communication
achieved by means of intercommunication to the user's Logic Computing Device or by a display on the lighting controller such as a display screen. This is advantageous as it provides for a quick method of diagnosing device connectivity issues before the process of remapping addresses to logical short addresses is to begin and, in an example in which the number of devices found was less than the target number of devices installed, could offer the user the choice to have the DALI Control Device or the user's Logic Computing Device via the DALi Control Device look again for any unaddressed devices and if new devices are discovered to then assign them wtth an individual unused short address for each newly discovered device, which would then be ready for remapping. In another embodiment, the invention may include an algorithm implemented upon a Logic Computing Device that would allow the user to specify a range of logical short addresses that are to be used in the remapping of random short addresses. As previously mentioned, by default, the next lowest remaining logical short address will be the next to be assigned. For example, if a user had assigned two short addresses to lights, the next short address to be assigned would be short address two (because short addresses zero and one preceded it), in this embodiment; however, the user could specify the next addresses to be specified are to be addresses ten to twenty five. This is advantageous as it would allow devices to be addressed even in . the event that a number of devices are not yet installed on the DALI line, or the user prefers to remap addresses by specific sub-sets. For example, there are sixty four devices that must be remapped to logical addresses for a project. All devices are installed, except the devices that are supposed to be addresses eleven through to twenty inclusive. This embodiment of the invention would allow the user, after having remapped a device to address ten, to specify that a new range of devices are to be addressed next, in this case, the new range would be addresses twenty-one to sixty-four. Addresses eleven to twenty inclusive have been skipped because they are not installed yet, and could be addressed at a later stage. in another embodiment, the invention may include an aigorithmically implemented method of returning to the previous stage in the addressing process by making a gesture with a Logic Computing Device. For example, if the user has acci dentally selected a light to be addressed, the user could perform an action, such as a swift movement of the Logic Computing Device across a horizontal axis, thus returning to the previous stage of the addressing process. Ideally, in this scenario, the previous stage in the addressing process would be the inner loop. One such way of implementing this feature is to implement an algorithm onto the Logic Computing Device that is equipped with an accelerometer. Such an algorithm may contain a function for setting a threshold acceleration and a function for measuring such acceleration in order to determine whether said threshold has been satisfied. In the event that the threshold acceleration is satisfied, the Logic Computing Device may then instruct the DALI Control Device to return to a previous function used as part of the addressing
process. Of course the function of a swift movement of the Logic Computing Device could be different for different directions of movement, requiring the additional measurement of direction to be satisfied.
The presently disclosed embodiments are therefore considered in all respects to be illustrative and not restrictive. The scope of the invention is indicated by the appended claims, rather than the foregoing description, and all changes that come within the meaning and range of equivalents thereof are intended to be embraced therein.