Joint Error-Dimming Control Using Constant Weight Coding in Visible Light Communication Systems

To enhance commercial implementation, visible light communication (VLC) should facilitate dimming control and reliable data transmission simultaneously, where users can adjust the brightness levels arbitrarily. Constant weight code (CWC) based dimming method can achieve higher spectral efficiency, but the codewords need further selection to exponentially map the massage. In this paper, based on CWC, we proposed a method to achieve dimming control as well as improve error performance via optimizing the average Hamming distance of the codeword set. Simulation results show that the optimal codeword set can achieve better error performance.


Introduction
Recently, white light emitting diode (LED) based lighting has been emerging as a promising technology to overtake the traditional lighting (e.g. incandescent and fluorescent lighting) [1,2]. While, visible light communication (VLC) system utilizing the superior modulation of LED can achieve data transmission and illumination simultaneously [3,4]. Compared with radio frequency, VLC enables to provide broadband transmission with unlicensed spectrum and alleviate shortage of wireless spectrum resources, which is regarded as a more attractive communication option. Plenty of researches have been aimed at improving communication performance. However, lighting quality should also be considered when we design signals. In practical, to provide energy saving and ecological benefit, dimming control is particularly important for in indoor VLC applications where desired brightness levels can be achieved. To maintain stable and dimmable illumination, many modulation and coding schemes are dedicated to VLC systems [5][6][7][8][9].
For simplification, on-off keying (OOK) modulation is widely used in VLC systems, where LED is switched between a high (bit 1) and low (bit 0) to modulate data [5]. In general, the occurrence frequency of two levels (ON and OFF) is same, which can achieve the 50% dimming level. Continuous current reduction (CCR) is the simplest dimming control scheme where the dimming level can be reduced proportionally to the current. However, due to the nonlinear characteristics of LEDs, directly changing the forward current will alter the emitted wavelength of the light, thus causing chromaticity shifts which may affect communication and illumination function severely. Therefore, the general modulation or coding methods achieve dimming control via changing the ratio of "1" and "0".
Despite appearing certain advantages, the existing dimming schemes are difficult to achieve a balance of overall performance. To achieve the required dimming target, compensation time dimming scheme multiplexes the data symbols and compensation symbols where bit 1 or 0 compensation symbols are multiplexed with the data symbols [6]. Unfortunately, overmuch compensation symbols may decrease the performance of spectral efficiency. Based on binary entropy function, Kwon proposed inverse source coding (ISC) scheme in [7] to meet the theoretical maximum spectral efficiency under a given dimming target. However, for requiring an error-free condition, ISC seems unrealistic. Constant weight code (CWC) based dimming method proposed in [8] can achieve higher spectral efficiency, but the codewords need further selection to exponentially map the massage. As far as our concerned, many works randomly pick the required codewords for simplification without forming a structured design, which deserves further research.
Inspired by [8], in this paper, we utilize CWC to achieve dimming control as well as improve error performance via optimizing the average Hamming distance of the codeword set. Based on the proposed principles, the optimal codeword set can be obtained, which will be detailely demonstrated in the next section. Simulation results show that the proposed method can be regarded as an alternative choice to improve the error performance.

The proposed method 2.1 Principles for optimization
In constant weight code, we fix pulsed slots in an slot symbol frame where ∈ {1,2, ⋯ , − 1}, denoted as ( , ) CWC. Thus, the dimming factor can be expressed as = . (1) Then the total number of distinct combinations, which can be used for symbol encoding, are computed . The number of bits required to encode symbols is given by 2 , and the code rate is expressed as which can be regarded as spectral efficiency here. Of the 2 bits, = ⌊ 2 ⌋ bits are useful for binary data encoding where ⌊ ⌋ denotes the maximum integer not greater than . The example = 8 is shown in Table 1. From the above analysis, we notice that the codewords of CWC need further selection to exponentially map the massage. Instead of randomly picking the required codewords, we optimize the average Hamming distance of the codeword set to improve error performance. Before expounding the principles of optimization, we first make two notations: 1) donotes the average Hamming distance of the codeword set.

2)
donotes the average Hamming distance between two codeword corresponding to the bit set where the Hamming distant is .
Here gives the principles of optimization: 1) Principle 1: Guarantee the average Hamming distance be the largest, which can minimize the symbol error rate.
2) Principle 2: When is same, prioritize −1 , ⋯ , 1 and guarantee it be the largest, which can minimize the bit error rate.  Meanwhile, the whole process is shown in Fig.1. In "Dimming Controller" part, the parameters of CWC can be determined based on the required dimming level. On the constraint of the proposed principles, the optimal codeword set can be obtained. , which can achieve 50% dimming level. Therefore, there are 6 4 = 360 different ways to map the bit set ( 2 , 1 ) = {00,01,10,11} into a symbol set of size 4, among the 6 possible symbols {0011,0101,0110,1001,1010,1100} . Obviously, the Hamming distance of any symbol pair among the codeword set equals 2 or 4. To express our ideas clearly, we divide the whole process into several steps. 1) We first sort out theses possibility into 6 4 = 15 codeword sets. Depending on the difference of , these 15 codeword set can be divided into two groups with = 2.67 or = 2.33.

Simulation results
Based on the proposed principles, the optimal codeword set can be found. Take (2,4) CWC for example, we can get four types codeword set.
Simulations have been carried out to verify our ideas. We have contrasted the four types codeword set according to Table 2, and each types have symbols from the respective codeword sets. The simulation results of error performance are shown in Figs.2 and 3.  As shown in Fig.2, in terms of symbol error rate, due to the same average Hamming distance , "BEST" is same as "GOOD" and "BAD" is same as "WORST" respectively. Meanwhile, the error performance of "BEST" and "GOOD" are superior to "BAD" and "WORST". From Fig.3, with the optimal codeword set, "BEST" achieves the best bit error rate compared with the other three types.

Conclusions
In this paper, utilizing constant weight code, we have proposed a method to optimize the average Hamming distance of the codeword set, which can achieve dimming control as well as reliable data transmission.
Simulations have been carried out where better error performance can be obtained with the optimal codeword set. Therefore, the proposed method can be regarded as an alternative choice.