Electronic – DALI : How commissioning process takes place in DALI system

controldali

I have gone through various documents regarding the Commissioning in the DALI interface. But I finding it difficult to understand some of the points. So if anyone with DALI Commissioning can help me understand the commissioning procedure. I already know this part.

  1. first initialization command is sent.

  2. Then randomize command is sent which will generate 24-bit random address at ballast side.

After this how it assigns the short address to each ballast is out of my knowledge and this is where I am stuck right now. Any help would be much appreciated.

Best Answer

After randomising the ballasts, the controller searches for the ballast with the lowest random number. It does this by issuing search address commands which contain the address that it is looking for, and compare commands which are queries, which get replies from all the ballasts that have that search address or lower as their random address.

Once the controller gets no replies, it backtracks one step to check the one ballast with that random address, then it assigns it a short address using a special program command which only takes effect in the ballast whose random address equals the search address. (This is technically called the "selected" state). Then the controller tells that ballast to withdraw from the process so it doesn't respond to further compares this time round, and the search can continue for the next highest ballast.

The standards don't actually dictate that binary search is the algorithm used, but it is assumed that this the best method. Note that some people use the term "long address" but this is not the correct name, there is only the random address and the search address (the current value guessed by the controller), and that the random address is not really an address mode of the commands (which are too short to contain it anyway). There is only 267 Program Short Address and 269 Query Short address commands that use the random/search address as the defining factor as to whether the command applies to them, and these are only valid between Initialise and Terminate.

There are many small details to this process which I have omitted for simpilicity, like dealing with duplicate random addresses, but this gives you the general idea.

Once the controller has identified one ballast by search address, it is free to chose a short address. Some controllers do this automatically, others allow the user to enter the number they would like to use. It is usual at this point to identify which ballast has been found by means of flashing the lamps, using the short address.