Evaluation of the Effects of Hidden Node Problems in IEEE 802.15.7 Uplink Performance
Identifieur interne : 000079 ( Pmc/Corpus ); précédent : 000078; suivant : 000080Evaluation of the Effects of Hidden Node Problems in IEEE 802.15.7 Uplink Performance
Auteurs : Carlos Ley-Bosch ; Itziar Alonso-González ; David Sánchez-Rodríguez ; Carlos Ramírez-Casa AsSource :
- Sensors (Basel, Switzerland) [ 1424-8220 ] ; 2016.
Abstract
In the last few years, the increasing use of LEDs in illumination systems has been conducted due to the emergence of Visible Light Communication (VLC) technologies, in which data communication is performed by transmitting through the visible band of the electromagnetic spectrum. In 2011, the Institute of Electrical and Electronics Engineers (IEEE) published the IEEE 802.15.7 standard for Wireless Personal Area Networks based on VLC. Due to limitations in the coverage of the transmitted signal, wireless networks can suffer from the hidden node problems, when there are nodes in the network whose transmissions are not detected by other nodes. This problem can cause an important degradation in communications when they are made by means of the Carrier Sense Multiple Access with Collision Avoidance (CSMA/CA) access control method, which is used in IEEE 802.15.7 This research work evaluates the effects of the hidden node problem in the performance of the IEEE 802.15.7 standard We implement a simulator and analyze VLC performance in terms of parameters like end-to-end goodput and message loss rate. As part of this research work, a solution to the hidden node problem is proposed, based on the use of idle patterns defined in the standard. Idle patterns are sent by the network coordinator node to communicate to the other nodes that there is an ongoing transmission. The validity of the proposed solution is demonstrated with simulation results.
Url:
DOI: 10.3390/s16020216
PubMed: 26861352
PubMed Central: 4801592
Links to Exploration step
PMC:4801592Le document en format XML
<record><TEI><teiHeader><fileDesc><titleStmt><title xml:lang="en">Evaluation of the Effects of Hidden Node Problems in IEEE 802.15.7 Uplink Performance</title>
<author><name sortKey="Ley Bosch, Carlos" sort="Ley Bosch, Carlos" uniqKey="Ley Bosch C" first="Carlos" last="Ley-Bosch">Carlos Ley-Bosch</name>
<affiliation><nlm:aff id="af1-sensors-16-00216">Institute for Technological Development and Innovation in Communications, Edificio Polivalente II, 2ªplanta, Parque Científico y Tecnológico, Campus Universitario de Tafira, Las Palmas de Gran Canaria 35017, Spain;<email>david.sanchez@ulpgc.es</email>
(D.S.-R.);<email>carlos.ramirez@ulpgc.es</email>
(C.R.-C.)</nlm:aff>
</affiliation>
<affiliation><nlm:aff id="af2-sensors-16-00216">Department of Telematic Engineering, University of Las Palmas de Gran Canaria, Campus Universitario de Tafira, Las Palmas de Gran Canaria 35017, Spain</nlm:aff>
</affiliation>
</author>
<author><name sortKey="Alonso Gonzalez, Itziar" sort="Alonso Gonzalez, Itziar" uniqKey="Alonso Gonzalez I" first="Itziar" last="Alonso-González">Itziar Alonso-González</name>
<affiliation><nlm:aff id="af1-sensors-16-00216">Institute for Technological Development and Innovation in Communications, Edificio Polivalente II, 2ªplanta, Parque Científico y Tecnológico, Campus Universitario de Tafira, Las Palmas de Gran Canaria 35017, Spain;<email>david.sanchez@ulpgc.es</email>
(D.S.-R.);<email>carlos.ramirez@ulpgc.es</email>
(C.R.-C.)</nlm:aff>
</affiliation>
<affiliation><nlm:aff id="af2-sensors-16-00216">Department of Telematic Engineering, University of Las Palmas de Gran Canaria, Campus Universitario de Tafira, Las Palmas de Gran Canaria 35017, Spain</nlm:aff>
</affiliation>
</author>
<author><name sortKey="Sanchez Rodriguez, David" sort="Sanchez Rodriguez, David" uniqKey="Sanchez Rodriguez D" first="David" last="Sánchez-Rodríguez">David Sánchez-Rodríguez</name>
<affiliation><nlm:aff id="af1-sensors-16-00216">Institute for Technological Development and Innovation in Communications, Edificio Polivalente II, 2ªplanta, Parque Científico y Tecnológico, Campus Universitario de Tafira, Las Palmas de Gran Canaria 35017, Spain;<email>david.sanchez@ulpgc.es</email>
(D.S.-R.);<email>carlos.ramirez@ulpgc.es</email>
(C.R.-C.)</nlm:aff>
</affiliation>
<affiliation><nlm:aff id="af2-sensors-16-00216">Department of Telematic Engineering, University of Las Palmas de Gran Canaria, Campus Universitario de Tafira, Las Palmas de Gran Canaria 35017, Spain</nlm:aff>
</affiliation>
</author>
<author><name sortKey="Ramirez Casa As, Carlos" sort="Ramirez Casa As, Carlos" uniqKey="Ramirez Casa As C" first="Carlos" last="Ramírez-Casa As">Carlos Ramírez-Casa As</name>
<affiliation><nlm:aff id="af1-sensors-16-00216">Institute for Technological Development and Innovation in Communications, Edificio Polivalente II, 2ªplanta, Parque Científico y Tecnológico, Campus Universitario de Tafira, Las Palmas de Gran Canaria 35017, Spain;<email>david.sanchez@ulpgc.es</email>
(D.S.-R.);<email>carlos.ramirez@ulpgc.es</email>
(C.R.-C.)</nlm:aff>
</affiliation>
<affiliation><nlm:aff id="af2-sensors-16-00216">Department of Telematic Engineering, University of Las Palmas de Gran Canaria, Campus Universitario de Tafira, Las Palmas de Gran Canaria 35017, Spain</nlm:aff>
</affiliation>
</author>
</titleStmt>
<publicationStmt><idno type="wicri:source">PMC</idno>
<idno type="pmid">26861352</idno>
<idno type="pmc">4801592</idno>
<idno type="url">http://www.ncbi.nlm.nih.gov/pmc/articles/PMC4801592</idno>
<idno type="RBID">PMC:4801592</idno>
<idno type="doi">10.3390/s16020216</idno>
<date when="2016">2016</date>
<idno type="wicri:Area/Pmc/Corpus">000079</idno>
<idno type="wicri:explorRef" wicri:stream="Pmc" wicri:step="Corpus" wicri:corpus="PMC">000079</idno>
</publicationStmt>
<sourceDesc><biblStruct><analytic><title xml:lang="en" level="a" type="main">Evaluation of the Effects of Hidden Node Problems in IEEE 802.15.7 Uplink Performance</title>
<author><name sortKey="Ley Bosch, Carlos" sort="Ley Bosch, Carlos" uniqKey="Ley Bosch C" first="Carlos" last="Ley-Bosch">Carlos Ley-Bosch</name>
<affiliation><nlm:aff id="af1-sensors-16-00216">Institute for Technological Development and Innovation in Communications, Edificio Polivalente II, 2ªplanta, Parque Científico y Tecnológico, Campus Universitario de Tafira, Las Palmas de Gran Canaria 35017, Spain;<email>david.sanchez@ulpgc.es</email>
(D.S.-R.);<email>carlos.ramirez@ulpgc.es</email>
(C.R.-C.)</nlm:aff>
</affiliation>
<affiliation><nlm:aff id="af2-sensors-16-00216">Department of Telematic Engineering, University of Las Palmas de Gran Canaria, Campus Universitario de Tafira, Las Palmas de Gran Canaria 35017, Spain</nlm:aff>
</affiliation>
</author>
<author><name sortKey="Alonso Gonzalez, Itziar" sort="Alonso Gonzalez, Itziar" uniqKey="Alonso Gonzalez I" first="Itziar" last="Alonso-González">Itziar Alonso-González</name>
<affiliation><nlm:aff id="af1-sensors-16-00216">Institute for Technological Development and Innovation in Communications, Edificio Polivalente II, 2ªplanta, Parque Científico y Tecnológico, Campus Universitario de Tafira, Las Palmas de Gran Canaria 35017, Spain;<email>david.sanchez@ulpgc.es</email>
(D.S.-R.);<email>carlos.ramirez@ulpgc.es</email>
(C.R.-C.)</nlm:aff>
</affiliation>
<affiliation><nlm:aff id="af2-sensors-16-00216">Department of Telematic Engineering, University of Las Palmas de Gran Canaria, Campus Universitario de Tafira, Las Palmas de Gran Canaria 35017, Spain</nlm:aff>
</affiliation>
</author>
<author><name sortKey="Sanchez Rodriguez, David" sort="Sanchez Rodriguez, David" uniqKey="Sanchez Rodriguez D" first="David" last="Sánchez-Rodríguez">David Sánchez-Rodríguez</name>
<affiliation><nlm:aff id="af1-sensors-16-00216">Institute for Technological Development and Innovation in Communications, Edificio Polivalente II, 2ªplanta, Parque Científico y Tecnológico, Campus Universitario de Tafira, Las Palmas de Gran Canaria 35017, Spain;<email>david.sanchez@ulpgc.es</email>
(D.S.-R.);<email>carlos.ramirez@ulpgc.es</email>
(C.R.-C.)</nlm:aff>
</affiliation>
<affiliation><nlm:aff id="af2-sensors-16-00216">Department of Telematic Engineering, University of Las Palmas de Gran Canaria, Campus Universitario de Tafira, Las Palmas de Gran Canaria 35017, Spain</nlm:aff>
</affiliation>
</author>
<author><name sortKey="Ramirez Casa As, Carlos" sort="Ramirez Casa As, Carlos" uniqKey="Ramirez Casa As C" first="Carlos" last="Ramírez-Casa As">Carlos Ramírez-Casa As</name>
<affiliation><nlm:aff id="af1-sensors-16-00216">Institute for Technological Development and Innovation in Communications, Edificio Polivalente II, 2ªplanta, Parque Científico y Tecnológico, Campus Universitario de Tafira, Las Palmas de Gran Canaria 35017, Spain;<email>david.sanchez@ulpgc.es</email>
(D.S.-R.);<email>carlos.ramirez@ulpgc.es</email>
(C.R.-C.)</nlm:aff>
</affiliation>
<affiliation><nlm:aff id="af2-sensors-16-00216">Department of Telematic Engineering, University of Las Palmas de Gran Canaria, Campus Universitario de Tafira, Las Palmas de Gran Canaria 35017, Spain</nlm:aff>
</affiliation>
</author>
</analytic>
<series><title level="j">Sensors (Basel, Switzerland)</title>
<idno type="eISSN">1424-8220</idno>
<imprint><date when="2016">2016</date>
</imprint>
</series>
</biblStruct>
</sourceDesc>
</fileDesc>
<profileDesc><textClass></textClass>
</profileDesc>
</teiHeader>
<front><div type="abstract" xml:lang="en"><p>In the last few years, the increasing use of LEDs in illumination systems has been conducted due to the emergence of Visible Light Communication (VLC) technologies, in which data communication is performed by transmitting through the visible band of the electromagnetic spectrum. In 2011, the Institute of Electrical and Electronics Engineers (IEEE) published the IEEE 802.15.7 standard for Wireless Personal Area Networks based on VLC. Due to limitations in the coverage of the transmitted signal, wireless networks can suffer from the hidden node problems, when there are nodes in the network whose transmissions are not detected by other nodes. This problem can cause an important degradation in communications when they are made by means of the Carrier Sense Multiple Access with Collision Avoidance (CSMA/CA) access control method, which is used in IEEE 802.15.7 This research work evaluates the effects of the hidden node problem in the performance of the IEEE 802.15.7 standard We implement a simulator and analyze VLC performance in terms of parameters like end-to-end goodput and message loss rate. As part of this research work, a solution to the hidden node problem is proposed, based on the use of idle patterns defined in the standard. Idle patterns are sent by the network coordinator node to communicate to the other nodes that there is an ongoing transmission. The validity of the proposed solution is demonstrated with simulation results.</p>
</div>
</front>
<back><div1 type="bibliography"><listBibl><biblStruct><analytic><author><name sortKey="Jovicic, A" uniqKey="Jovicic A">A. Jovicic</name>
</author>
<author><name sortKey="Li, J" uniqKey="Li J">J. Li</name>
</author>
<author><name sortKey="Richardson, T" uniqKey="Richardson T">T. Richardson</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Zhou, J" uniqKey="Zhou J">J. Zhou</name>
</author>
<author><name sortKey="Yan, W" uniqKey="Yan W">W. Yan</name>
</author>
</analytic>
</biblStruct>
<biblStruct></biblStruct>
<biblStruct><analytic><author><name sortKey="Chen, K" uniqKey="Chen K">K. Chen</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Jang, B" uniqKey="Jang B">B. Jang</name>
</author>
<author><name sortKey="Sichitiu, M" uniqKey="Sichitiu M">M. Sichitiu</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Wijetunge, S" uniqKey="Wijetunge S">S. Wijetunge</name>
</author>
<author><name sortKey="Gunawardana, U" uniqKey="Gunawardana U">U. Gunawardana</name>
</author>
<author><name sortKey="Liyanapathirana, R" uniqKey="Liyanapathirana R">R. Liyanapathirana</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Hwang, L" uniqKey="Hwang L">L. Hwang</name>
</author>
<author><name sortKey="Sep, S" uniqKey="Sep S">S. Sep</name>
</author>
<author><name sortKey="Shih, Y" uniqKey="Shih Y">Y. Shih</name>
</author>
<author><name sortKey="Cheng, Y" uniqKey="Cheng Y">Y. Cheng</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Kwon, C" uniqKey="Kwon C">C. Kwon</name>
</author>
<author><name sortKey="Tek, R" uniqKey="Tek R">R. Tek</name>
</author>
<author><name sortKey="Kim, K" uniqKey="Kim K">K. Kim</name>
</author>
<author><name sortKey="Yoo, S" uniqKey="Yoo S">S. Yoo</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Sheu, S" uniqKey="Sheu S">S. Sheu</name>
</author>
<author><name sortKey="Shih, Y" uniqKey="Shih Y">Y. Shih</name>
</author>
<author><name sortKey="Lee, W" uniqKey="Lee W">W. Lee</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Adere, K" uniqKey="Adere K">K. Adere</name>
</author>
<author><name sortKey="Murthy, G R" uniqKey="Murthy G">G.R. Murthy</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Musa, A" uniqKey="Musa A">A. Musa</name>
</author>
<author><name sortKey="Baba, M" uniqKey="Baba M">M. Baba</name>
</author>
<author><name sortKey="Mansor, H" uniqKey="Mansor H">H. Mansor</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Nobar, S" uniqKey="Nobar S">S. Nobar</name>
</author>
<author><name sortKey="Mehr, K" uniqKey="Mehr K">K. Mehr</name>
</author>
<author><name sortKey="Niya, J" uniqKey="Niya J">J. Niya</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Hwang, J" uniqKey="Hwang J">J. Hwang</name>
</author>
<author><name sortKey="Do, T" uniqKey="Do T">T. Do</name>
</author>
<author><name sortKey="Yoo, M" uniqKey="Yoo M">M. Yoo</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Kahn, J M" uniqKey="Kahn J">J.M. Kahn</name>
</author>
<author><name sortKey="Barry, J R" uniqKey="Barry J">J.R. Barry</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Grobe, L" uniqKey="Grobe L">L. Grobe</name>
</author>
<author><name sortKey="Paraskevopoulos, A" uniqKey="Paraskevopoulos A">A. Paraskevopoulos</name>
</author>
<author><name sortKey="Hilt, J" uniqKey="Hilt J">J. Hilt</name>
</author>
<author><name sortKey="Schulz, D" uniqKey="Schulz D">D. Schulz</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Kahn, J M" uniqKey="Kahn J">J.M. Kahn</name>
</author>
<author><name sortKey="Krause, W J" uniqKey="Krause W">W.J. Krause</name>
</author>
<author><name sortKey="Carruthers, J B" uniqKey="Carruthers J">J.B. Carruthers</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Lopez Hernandez, F J" uniqKey="Lopez Hernandez F">F.J. Lopez-Hernandez</name>
</author>
<author><name sortKey="Betancor, M J" uniqKey="Betancor M">M.J. Betancor</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Gonzalez, O" uniqKey="Gonzalez O">O. González</name>
</author>
<author><name sortKey="Rodriguez, S" uniqKey="Rodriguez S">S. Rodríguez</name>
</author>
<author><name sortKey="Perez Jimenez, R" uniqKey="Perez Jimenez R">R. Pérez-Jiménez</name>
</author>
<author><name sortKey="Mendoza, B R" uniqKey="Mendoza B">B.R. Mendoza</name>
</author>
<author><name sortKey="Ayala, A" uniqKey="Ayala A">A. Ayala</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Lee, K" uniqKey="Lee K">K. Lee</name>
</author>
<author><name sortKey="Park, H" uniqKey="Park H">H. Park</name>
</author>
<author><name sortKey="Barry, J R" uniqKey="Barry J">J.R. Barry</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Komine, T" uniqKey="Komine T">T. Komine</name>
</author>
<author><name sortKey="Nakagawa, M" uniqKey="Nakagawa M">M. Nakagawa</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Chvojka, P" uniqKey="Chvojka P">P. Chvojka</name>
</author>
<author><name sortKey="Zvanovec, S" uniqKey="Zvanovec S">S. Zvanovec</name>
</author>
<author><name sortKey="Haigh, P A" uniqKey="Haigh P">P.A. Haigh</name>
</author>
<author><name sortKey="Ghassemlooy, Z" uniqKey="Ghassemlooy Z">Z. Ghassemlooy</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Ding, J" uniqKey="Ding J">J. Ding</name>
</author>
<author><name sortKey="Xu, Z" uniqKey="Xu Z">Z. Xu</name>
</author>
<author><name sortKey="Hanzo, L" uniqKey="Hanzo L">L. Hanzo</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Zhang, T" uniqKey="Zhang T">T. Zhang</name>
</author>
<author><name sortKey="Guo, S" uniqKey="Guo S">S. Guo</name>
</author>
<author><name sortKey="Chen, H" uniqKey="Chen H">H. Chen</name>
</author>
<author><name sortKey="Zhong, F" uniqKey="Zhong F">F. Zhong</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Shoreh, M" uniqKey="Shoreh M">M. Shoreh</name>
</author>
<author><name sortKey="Fallahpour, A" uniqKey="Fallahpour A">A. Fallahpour</name>
</author>
<author><name sortKey="Salehi, J" uniqKey="Salehi J">J. Salehi</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Biswal, S" uniqKey="Biswal S">S. Biswal</name>
</author>
<author><name sortKey="Prince, S" uniqKey="Prince S">S. Prince</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Sindhubala, K" uniqKey="Sindhubala K">K. Sindhubala</name>
</author>
<author><name sortKey="Vijayalakshmi, B" uniqKey="Vijayalakshmi B">B. Vijayalakshmi</name>
</author>
</analytic>
</biblStruct>
<biblStruct></biblStruct>
<biblStruct></biblStruct>
<biblStruct><analytic><author><name sortKey="Yang, J" uniqKey="Yang J">J. Yang</name>
</author>
<author><name sortKey="Kwon, J" uniqKey="Kwon J">J. Kwon</name>
</author>
<author><name sortKey="Spng, D" uniqKey="Spng D">D. SPNG</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Ekici, O" uniqKey="Ekici O">O. Ekici</name>
</author>
<author><name sortKey="Yongacoglu, A" uniqKey="Yongacoglu A">A. Yongacoglu</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Harthikote Matha, M" uniqKey="Harthikote Matha M">M. Harthikote-Matha</name>
</author>
<author><name sortKey="Banka, T" uniqKey="Banka T">T. Banka</name>
</author>
<author><name sortKey="Jayasumana, A" uniqKey="Jayasumana A">A. Jayasumana</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Le, N T" uniqKey="Le N">N.T. Le</name>
</author>
<author><name sortKey="Uddin, M S" uniqKey="Uddin M">M.S. Uddin</name>
</author>
<author><name sortKey="Choi, S" uniqKey="Choi S">S. Choi</name>
</author>
<author><name sortKey="Jang, Y M" uniqKey="Jang Y">Y.M. Jang</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Jang, Y" uniqKey="Jang Y">Y. Jang</name>
</author>
<author><name sortKey="Le, N" uniqKey="Le N">N. Le</name>
</author>
<author><name sortKey="Uddin, M" uniqKey="Uddin M">M. Uddin</name>
</author>
<author><name sortKey="Chowdhury, M" uniqKey="Chowdhury M">M. Chowdhury</name>
</author>
<author><name sortKey="Choi, S" uniqKey="Choi S">S. Choi</name>
</author>
<author><name sortKey="Cha, J" uniqKey="Cha J">J. Cha</name>
</author>
<author><name sortKey="Kim, J" uniqKey="Kim J">J. Kim</name>
</author>
<author><name sortKey="Lee, K" uniqKey="Lee K">K. Lee</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Singh, R" uniqKey="Singh R">R. Singh</name>
</author>
<author><name sortKey="O Arrell, T" uniqKey="O Arrell T">T. O’Farrell</name>
</author>
<author><name sortKey="David, J" uniqKey="David J">J. David</name>
</author>
</analytic>
</biblStruct>
<biblStruct></biblStruct>
<biblStruct><analytic><author><name sortKey="Chen, F" uniqKey="Chen F">F. Chen</name>
</author>
<author><name sortKey="Wang, N" uniqKey="Wang N">N. Wang</name>
</author>
<author><name sortKey="German, R" uniqKey="German R">R. German</name>
</author>
<author><name sortKey="Dressler, F" uniqKey="Dressler F">F. Dressler</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Deqiang, D" uniqKey="Deqiang D">D. Deqiang</name>
</author>
<author><name sortKey="Xizheng, K" uniqKey="Xizheng K">K. Xizheng</name>
</author>
<author><name sortKey="Linpeng, X" uniqKey="Linpeng X">X. Linpeng</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Komine, T" uniqKey="Komine T">T. Komine</name>
</author>
<author><name sortKey="Haruyama, S" uniqKey="Haruyama S">S. Haruyama</name>
</author>
<author><name sortKey="Nakagawa, M" uniqKey="Nakagawa M">M. Nakagawa</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Tronghop, D" uniqKey="Tronghop D">D. Tronghop</name>
</author>
<author><name sortKey="Hwang, J" uniqKey="Hwang J">J. Hwang</name>
</author>
<author><name sortKey="Jung, S" uniqKey="Jung S">S. Jung</name>
</author>
<author><name sortKey="Shin, Y" uniqKey="Shin Y">Y. Shin</name>
</author>
<author><name sortKey="Yoo, M" uniqKey="Yoo M">M. Yoo</name>
</author>
</analytic>
</biblStruct>
<biblStruct></biblStruct>
<biblStruct></biblStruct>
<biblStruct><analytic><author><name sortKey="Tobagi, F" uniqKey="Tobagi F">F. Tobagi</name>
</author>
<author><name sortKey="Kleinrock, L" uniqKey="Kleinrock L">L. Kleinrock</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Lin, K" uniqKey="Lin K">K. Lin</name>
</author>
<author><name sortKey="Hirohashi, K" uniqKey="Hirohashi K">K. Hirohashi</name>
</author>
</analytic>
</biblStruct>
</listBibl>
</div1>
</back>
</TEI>
<pmc article-type="research-article"><pmc-dir>properties open_access</pmc-dir>
<front><journal-meta><journal-id journal-id-type="nlm-ta">Sensors (Basel)</journal-id>
<journal-id journal-id-type="iso-abbrev">Sensors (Basel)</journal-id>
<journal-id journal-id-type="publisher-id">sensors</journal-id>
<journal-title-group><journal-title>Sensors (Basel, Switzerland)</journal-title>
</journal-title-group>
<issn pub-type="epub">1424-8220</issn>
<publisher><publisher-name>MDPI</publisher-name>
</publisher>
</journal-meta>
<article-meta><article-id pub-id-type="pmid">26861352</article-id>
<article-id pub-id-type="pmc">4801592</article-id>
<article-id pub-id-type="doi">10.3390/s16020216</article-id>
<article-id pub-id-type="publisher-id">sensors-16-00216</article-id>
<article-categories><subj-group subj-group-type="heading"><subject>Article</subject>
</subj-group>
</article-categories>
<title-group><article-title>Evaluation of the Effects of Hidden Node Problems in IEEE 802.15.7 Uplink Performance</article-title>
</title-group>
<contrib-group><contrib contrib-type="author"><name><surname>Ley-Bosch</surname>
<given-names>Carlos</given-names>
</name>
<xref ref-type="aff" rid="af1-sensors-16-00216">1</xref>
<xref ref-type="aff" rid="af2-sensors-16-00216">2</xref>
<xref rid="c1-sensors-16-00216" ref-type="corresp">*</xref>
</contrib>
<contrib contrib-type="author"><name><surname>Alonso-González</surname>
<given-names>Itziar</given-names>
</name>
<xref ref-type="aff" rid="af1-sensors-16-00216">1</xref>
<xref ref-type="aff" rid="af2-sensors-16-00216">2</xref>
<xref rid="c1-sensors-16-00216" ref-type="corresp">*</xref>
</contrib>
<contrib contrib-type="author"><name><surname>Sánchez-Rodríguez</surname>
<given-names>David</given-names>
</name>
<xref ref-type="aff" rid="af1-sensors-16-00216">1</xref>
<xref ref-type="aff" rid="af2-sensors-16-00216">2</xref>
</contrib>
<contrib contrib-type="author"><name><surname>Ramírez-Casañas</surname>
<given-names>Carlos</given-names>
</name>
<xref ref-type="aff" rid="af1-sensors-16-00216">1</xref>
<xref ref-type="aff" rid="af2-sensors-16-00216">2</xref>
</contrib>
</contrib-group>
<contrib-group><contrib contrib-type="editor"><name><surname>Reindl</surname>
<given-names>Leonhard M.</given-names>
</name>
<role>Academic Editor</role>
</contrib>
</contrib-group>
<aff id="af1-sensors-16-00216"><label>1</label>
Institute for Technological Development and Innovation in Communications, Edificio Polivalente II, 2ªplanta, Parque Científico y Tecnológico, Campus Universitario de Tafira, Las Palmas de Gran Canaria 35017, Spain;<email>david.sanchez@ulpgc.es</email>
(D.S.-R.);<email>carlos.ramirez@ulpgc.es</email>
(C.R.-C.)</aff>
<aff id="af2-sensors-16-00216"><label>2</label>
Department of Telematic Engineering, University of Las Palmas de Gran Canaria, Campus Universitario de Tafira, Las Palmas de Gran Canaria 35017, Spain</aff>
<author-notes><corresp id="c1-sensors-16-00216"><label>*</label>
Correspondence: <email>carlos.ley@ulpgc.es</email>
(C.L.-B.); <email>itziar.alonso@ulpgc.es</email>
(I.A.-G.); Tel.: +34-9284-52945 (I.A.-G); Fax: +34-9284-51380 (I.A.-G)</corresp>
</author-notes>
<pub-date pub-type="epub"><day>06</day>
<month>2</month>
<year>2016</year>
</pub-date>
<pub-date pub-type="collection"><month>2</month>
<year>2016</year>
</pub-date>
<volume>16</volume>
<issue>2</issue>
<elocation-id>216</elocation-id>
<history><date date-type="received"><day>09</day>
<month>12</month>
<year>2015</year>
</date>
<date date-type="accepted"><day>30</day>
<month>1</month>
<year>2016</year>
</date>
</history>
<permissions><copyright-statement>© 2016 by the authors; licensee MDPI, Basel, Switzerland.</copyright-statement>
<copyright-year>2016</copyright-year>
<license><license-p><pmc-comment>CREATIVE COMMONS</pmc-comment>
This article is an open access article distributed under the terms and conditions of the Creative Commons by Attribution (CC-BY) license (<ext-link ext-link-type="uri" xlink:href="http://creativecommons.org/licenses/by/4.0/">http://creativecommons.org/licenses/by/4.0/</ext-link>
).</license-p>
</license>
</permissions>
<abstract><p>In the last few years, the increasing use of LEDs in illumination systems has been conducted due to the emergence of Visible Light Communication (VLC) technologies, in which data communication is performed by transmitting through the visible band of the electromagnetic spectrum. In 2011, the Institute of Electrical and Electronics Engineers (IEEE) published the IEEE 802.15.7 standard for Wireless Personal Area Networks based on VLC. Due to limitations in the coverage of the transmitted signal, wireless networks can suffer from the hidden node problems, when there are nodes in the network whose transmissions are not detected by other nodes. This problem can cause an important degradation in communications when they are made by means of the Carrier Sense Multiple Access with Collision Avoidance (CSMA/CA) access control method, which is used in IEEE 802.15.7 This research work evaluates the effects of the hidden node problem in the performance of the IEEE 802.15.7 standard We implement a simulator and analyze VLC performance in terms of parameters like end-to-end goodput and message loss rate. As part of this research work, a solution to the hidden node problem is proposed, based on the use of idle patterns defined in the standard. Idle patterns are sent by the network coordinator node to communicate to the other nodes that there is an ongoing transmission. The validity of the proposed solution is demonstrated with simulation results.</p>
</abstract>
<kwd-group><kwd>IEEE802.15.7</kwd>
<kwd>VLC</kwd>
<kwd>MAC</kwd>
<kwd>CSMA/CA</kwd>
<kwd>Hidden node problem</kwd>
</kwd-group>
</article-meta>
</front>
<body><sec id="sec1-sensors-16-00216"><title>1. Introduction</title>
<p>Optical wireless communications based on visible light [<xref rid="B1-sensors-16-00216" ref-type="bibr">1</xref>
], named Visible Light Communications (VLCs), use visible light to transmit data by modulating intensity in light emitting diodes (LED), employing faster switching rates than the persistence of the human eye to avoid flickering in data/light sources. In recent years, the increasing use of LEDs in illumination systems has been conducted due to the emergence of the VLC technologies, both in indoor and outdoor environments [<xref rid="B2-sensors-16-00216" ref-type="bibr">2</xref>
]. In 2011, the IEEE (Institute of Electrical and Electronic Engineers) published the IEEE 802.15.7 standard [<xref rid="B3-sensors-16-00216" ref-type="bibr">3</xref>
], which defines Physical (PHY) and Medium Access Control (MAC) layers for short-range wireless optical communications using visible light. The MAC protocol plays a significant role in the performance of this standard, and includes a channel access procedure based on the CSMA/CA mechanism [<xref rid="B4-sensors-16-00216" ref-type="bibr">4</xref>
].</p>
<p>The hidden node problem is a well known problem in wireless networks based on radio frequency using CSMA/CA channel access mechanisms [<xref rid="B5-sensors-16-00216" ref-type="bibr">5</xref>
,<xref rid="B6-sensors-16-00216" ref-type="bibr">6</xref>
]. This problem is caused by signal coverage constraints, resulting in network nodes not being able to detect transmissions performed by other nodes. This problem can produce collisions due to concurrent transmissions, potentially degrading the performance of the communications in the network. The use of Resquest to Send/Clear to Send (RTS/CTS) define frames to reduce collisions produced by hidden nodes is a common solution adopted in wireless networks. For example, the IEEE 802.11 standard specification includes the option of using RTS/CTS frames in MAC layer protocol. Regarding the use of RTS/CST frames in IEEE 802.15.4 networks, authors in [<xref rid="B7-sensors-16-00216" ref-type="bibr">7</xref>
,<xref rid="B8-sensors-16-00216" ref-type="bibr">8</xref>
,<xref rid="B9-sensors-16-00216" ref-type="bibr">9</xref>
] have questioned the effectiveness of these solutions for several reasons, including the fact that, during backoff delays time, RTS/CTS frames sent by other nodes are not received because each node transceiver is disabled to reduce energy consumption, which is an important requirement in these type of networks [<xref rid="B6-sensors-16-00216" ref-type="bibr">6</xref>
]. The same restriction applies to backoff delays in the IEEE 802.15.7 standard.</p>
<p>In order to improve efficiency in energy consumption, the use of directional antennas has been proposed for wireless sensor networks [<xref rid="B10-sensors-16-00216" ref-type="bibr">10</xref>
]. Directional antennas provide several advantages such as spatial reuse channel and increases in coverage distance. However, directional antennas present a new problem called the directional hidden node problem, which is quite similar to the problem found in VLC networks. Solutions to the the directional hidden node problem in wireless sensor networks have been proposed, see [<xref rid="B10-sensors-16-00216" ref-type="bibr">10</xref>
], based on the rotation of the directional antenna. The rotation of the antenna is combined with some type of scheduling scheme in order to receive the transmissions coming from surrounding nodes. However, these type of solutions involve significant changes in the standard specification.</p>
<p>In VLC, the hidden node problem can be considered as a key issue because of the directional characteristics of both optical transmitters (LED) and receivers (photo detectors).</p>
<p>Since the IEEE 802.15.7 standard was published in 2011, we are unaware of other studies or published works to evaluate the effects of the hidden node problem when using CSMA/CA mechanisms in a VLC network. Several research papers have been published to evaluate the IEEE 802.15.7 uplink (from user terminals to data/lightning infrastructure) performance based on CSMA/CA. Papers [<xref rid="B11-sensors-16-00216" ref-type="bibr">11</xref>
,<xref rid="B12-sensors-16-00216" ref-type="bibr">12</xref>
] presented analytical and simulation models to analyze uplink performance, but their authors stated explicitly that there are not hidden nodes in their proposed models. In [<xref rid="B13-sensors-16-00216" ref-type="bibr">13</xref>
], the performance of transmissions using a simulation model is discussed, although the authors do not specify the physical channel model used, and they do not indicate if they take into account the presence of hidden nodes.</p>
<p>In this paper, we present an evaluation of the effects of the hidden node problem in the performance of uplink communications when using the slotted CSMA/CA random access procedure defined in the IEEE 802.15.7 standard. Furthermore, in order to improve network performance in the presence of hidden nodes, one solution is presented, which has been chosen not only according to effectiveness and ease of implementation criteria, but also taking into account its ease of integration in IEEE 802.15.7 standard, since it requires no modifications. Our proposed solution is based on selecting the type of idle patterns to be sent by the network coordinator, depending on whether or not it is receiving transmissions coming from network devices. According to IEEE 802.15.7 standard specification, sending idle patterns is a mandatory requirement for infrastructure nodes while idle or receiving operations, to ensure continuous illumination and avoid flickering.</p>
<p>The rest of this paper is organized as follows: <xref ref-type="sec" rid="sec2-sensors-16-00216">Section 2</xref>
, describes the fundamentals of VLC channel modeling, and the main causes of the hidden node problem are also analyzed. Next, <xref ref-type="sec" rid="sec3-sensors-16-00216">Section 3</xref>
provides an overview of the IEEE 802.15.7 standard. In <xref ref-type="sec" rid="sec4-sensors-16-00216">Section 4</xref>
, we present a description of the simulation model implemented to analyze and evaluate the performance of the CSMA/CA channel access mechanism defined in IEEE 802.15.7. In <xref ref-type="sec" rid="sec5-sensors-16-00216">Section 5</xref>
, simulation results obtained with and without the presence of hidden nodes are analyzed and compared. In <xref ref-type="sec" rid="sec6-sensors-16-00216">Section 6</xref>
, a solution to the hidden node problem is proposed, and its effectiveness is analyzed. Finally, <xref ref-type="sec" rid="sec7-sensors-16-00216">Section 7</xref>
contains the conclusions of this work.</p>
</sec>
<sec id="sec2-sensors-16-00216"><title>2. Fundamentals of Optical Wireless Communications</title>
<p>Optical wireless links for indoor environments can be classified according to two criteria. The first criterion is the degree of directionality of the optical transmitter and receiver. The second one relates to whether the link relies upon the existence of an uninterrupted line of sight (LOS) path between the transmitter and receiver [<xref rid="B14-sensors-16-00216" ref-type="bibr">14</xref>
].</p>
<list list-type="bullet"><list-item><p>Directed links resort to directional transmitters and receivers, which must be aimed in order to establish a link. Directed links maximize power efficiency since path loss and reception of ambient light noise is minimized. They have the disadvantage of limiting mobility in user terminals because they need to be aligned. On the other hand, non directed links may be more convenient to use for mobile terminals, since they do not require precise alignment. However, non directed links present some disadvantages—such as multipath distortion and lower power efficiency—that make it difficult to achieve high transmission rates.</p>
</list-item>
<list-item><p>LOS links require a direct path between the transmitter and receiver that is without obstacles. They allow for maximizing received power and minimizing multipath distortion, but the need for a line of sight diminishes flexibility of use. Non-LOS (NLOS) links are more robust because they can operate even in the presence of obstacles between the transmitter and receiver. NLOS non directed links are referred to as diffuse links. VLCs can use several link configurations, like directed LOS, non directed LOS and diffuse links, see <xref ref-type="fig" rid="sensors-16-00216-f001">Figure 1</xref>
[<xref rid="B15-sensors-16-00216" ref-type="bibr">15</xref>
].</p>
</list-item>
</list>
<fig id="sensors-16-00216-f001" position="float"><label>Figure 1</label>
<caption><p>Optical link configurations in VLC: (<bold>a</bold>
) directed LOS; (<bold>b</bold>
) non directed LOS; (<bold>c</bold>
) diffuse.</p>
</caption>
<graphic xlink:href="sensors-16-00216-g001"></graphic>
</fig>
<sec id="sec2dot1-sensors-16-00216"><title>2.1. Channel Model in VLC</title>
<p>The optical channel components are the optical transmitter (LED), the photo detector (PD) and the transmission medium. For VLC links, intensity modulation (IM) is used, in which the waveform of the signal to be transmitted is modulated onto the instantaneous power of the optical carrier. The technique used in reception is direct detection (DD), in which a photodetector produces an electrical current proportional to the received optical instantaneous power. Usually, optical wireless systems based on IM/DD are modeled as a base band linear, time-invariant system [<xref rid="B14-sensors-16-00216" ref-type="bibr">14</xref>
], see <xref ref-type="fig" rid="sensors-16-00216-f002">Figure 2</xref>
.</p>
<fig id="sensors-16-00216-f002" position="float"><label>Figure 2</label>
<caption><p>Optical channel modeled as a base band linear system.</p>
</caption>
<graphic xlink:href="sensors-16-00216-g002"></graphic>
</fig>
<p>In <xref ref-type="fig" rid="sensors-16-00216-f002">Figure 2</xref>
, <inline-formula><mml:math id="mm1"><mml:mrow><mml:mi>X</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>
is the instantaneous input power, <inline-formula><mml:math id="mm2"><mml:mrow><mml:mi>Y</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>
is the output current, and <inline-formula><mml:math id="mm3"><mml:mrow><mml:mi>h</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>
is the impulse response. <inline-formula><mml:math id="mm4"><mml:mrow><mml:mi>N</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>
is signal-independent additive noise and <italic>R</italic>
is the receiver responsivity. This base band channel model can be expressed by Equation (<xref ref-type="disp-formula" rid="FD1-sensors-16-00216">1</xref>
), where ⊗ symbol denotes convolution.
<disp-formula id="FD1-sensors-16-00216"><label>(1)</label>
<mml:math id="mm5"><mml:mrow><mml:mi>Y</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mi>R</mml:mi>
<mml:mo>·</mml:mo>
<mml:mi>X</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>⊗</mml:mo>
<mml:mi>h</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>+</mml:mo>
<mml:mi>N</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</disp-formula>
</p>
<p>The impulsive response, <inline-formula><mml:math id="mm6"><mml:mrow><mml:mi>h</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>
, is determined by transmitter and receiver characteristics but also depends on their position, orientation and optical signal reflections as well. Plenty of works have been published to characterize an optical wireless channel and its impulsive response <inline-formula><mml:math id="mm7"><mml:mrow><mml:mi>h</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>
, such as [<xref rid="B16-sensors-16-00216" ref-type="bibr">16</xref>
] based on evaluating of measures, [<xref rid="B17-sensors-16-00216" ref-type="bibr">17</xref>
] which applies iterative algorithms, or [<xref rid="B18-sensors-16-00216" ref-type="bibr">18</xref>
] based on statistical methods. Others works have also been published focusing on studying the VLC channel, such as [<xref rid="B19-sensors-16-00216" ref-type="bibr">19</xref>
,<xref rid="B20-sensors-16-00216" ref-type="bibr">20</xref>
,<xref rid="B21-sensors-16-00216" ref-type="bibr">21</xref>
].</p>
<sec id="sec2dot1dot1-sensors-16-00216"><title>2.1.1. Directed LOS Channel Gain</title>
<p>Frequency response of optical channel is relatively flat near Direct Current (DC), so the most important quantity for characterizing this channel is the DC gain <inline-formula><mml:math id="mm8"><mml:mrow><mml:mi>H</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>
[<xref rid="B14-sensors-16-00216" ref-type="bibr">14</xref>
], which relates the transmitted and received average power, see Equation (<xref ref-type="disp-formula" rid="FD2-sensors-16-00216">2</xref>
):
<disp-formula id="FD2-sensors-16-00216"><label>(2)</label>
<mml:math id="mm9"><mml:mrow><mml:msub><mml:mi>P</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mi>H</mml:mi>
<mml:mrow><mml:mo stretchy="false">(</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>·</mml:mo>
<mml:msub><mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</disp-formula>
</p>
<p>In VLC, the received power can be expressed as the sum of LOS and NLOS components [<xref rid="B21-sensors-16-00216" ref-type="bibr">21</xref>
]. In directed LOS links, the <inline-formula><mml:math id="mm10"><mml:mrow><mml:mi>h</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>
, hence the DC gain, can be computed fairly accurately by considering only the direct LOS propagation path. <xref ref-type="fig" rid="sensors-16-00216-f003">Figure 3</xref>
shows an example of a directed LOS link. An optical source can be modeled by its position vector, a unit-length orientation vector <inline-formula><mml:math id="mm11"><mml:msub><mml:mover accent="true"><mml:mi>o</mml:mi>
<mml:mo>→</mml:mo>
</mml:mover>
<mml:mi>t</mml:mi>
</mml:msub>
</mml:math>
</inline-formula>
, transmission power <inline-formula><mml:math id="mm12"><mml:msub><mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
</mml:msub>
</mml:math>
</inline-formula>
and a radiation intensity pattern <inline-formula><mml:math id="mm13"><mml:mrow><mml:mi>I</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>θ</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>
emitted in direction <italic>θ</italic>
. Where <italic>m</italic>
is the mode number of the radiation lobe, which specifies the directionality of the source, and is related to the transmitter half power angle <inline-formula><mml:math id="mm14"><mml:msub><mml:mi>θ</mml:mi>
<mml:mrow><mml:mn>1</mml:mn>
<mml:mo>/</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula>
. Similarly, a receiver is defined by its position, orientation <inline-formula><mml:math id="mm15"><mml:msub><mml:mover accent="true"><mml:mi>o</mml:mi>
<mml:mo>→</mml:mo>
</mml:mover>
<mml:mi>r</mml:mi>
</mml:msub>
</mml:math>
</inline-formula>
, photo detector area <italic>A</italic>
, and field of view (FOV). The angle formed between the optical incident signal and the orientation vector <inline-formula><mml:math id="mm16"><mml:msub><mml:mover accent="true"><mml:mi>o</mml:mi>
<mml:mo>→</mml:mo>
</mml:mover>
<mml:mi>r</mml:mi>
</mml:msub>
</mml:math>
</inline-formula>
is called the incident angle <italic>ψ</italic>
. The maximum incident angle defines the receiver FOV.</p>
<fig id="sensors-16-00216-f003" position="float"><label>Figure 3</label>
<caption><p>Transmitter and receiver in directed LOS link configuration.</p>
</caption>
<graphic xlink:href="sensors-16-00216-g003"></graphic>
</fig>
<p>According to [<xref rid="B14-sensors-16-00216" ref-type="bibr">14</xref>
], when considering only the direct LOS propagation path, the channel DC gain H(0) is given by Equation (<xref ref-type="disp-formula" rid="FD3-sensors-16-00216">3</xref>
):<disp-formula id="FD3-sensors-16-00216"><label>(3)</label>
<mml:math id="mm17"><mml:mrow><mml:mi>H</mml:mi>
<mml:mrow><mml:mo stretchy="false">(</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>=</mml:mo>
<mml:mfrac><mml:msub><mml:mi>P</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
<mml:msub><mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
</mml:msub>
</mml:mfrac>
<mml:mo>=</mml:mo>
<mml:mfenced separators="" open="{" close="}"><mml:mtable><mml:mtr><mml:mtd columnalign="left"><mml:mrow><mml:mfrac><mml:mrow><mml:mi>m</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow><mml:mn>2</mml:mn>
<mml:mi>π</mml:mi>
<mml:mo>·</mml:mo>
<mml:msup><mml:mi>d</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:mfrac>
<mml:mo>·</mml:mo>
<mml:msup><mml:mo form="prefix">cos</mml:mo>
<mml:mi>m</mml:mi>
</mml:msup>
<mml:mrow><mml:mo stretchy="false">(</mml:mo>
<mml:mi>θ</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>·</mml:mo>
<mml:mi>A</mml:mi>
<mml:mo>·</mml:mo>
<mml:mi>G</mml:mi>
<mml:mrow><mml:mo stretchy="false">(</mml:mo>
<mml:mi>ψ</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>·</mml:mo>
<mml:mi>T</mml:mi>
<mml:mrow><mml:mo stretchy="false">(</mml:mo>
<mml:mi>ψ</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>·</mml:mo>
<mml:mi>c</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>s</mml:mi>
<mml:mrow><mml:mo stretchy="false">(</mml:mo>
<mml:mi>ψ</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mtd>
<mml:mtd columnalign="left"><mml:mrow><mml:mn>0</mml:mn>
<mml:mo><</mml:mo>
<mml:mi>ψ</mml:mi>
<mml:mo>≤</mml:mo>
<mml:mi>F</mml:mi>
<mml:mi>O</mml:mi>
<mml:mi>V</mml:mi>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr><mml:mtd columnalign="left"><mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="left"><mml:mrow><mml:mi>ψ</mml:mi>
<mml:mo>></mml:mo>
<mml:mi>F</mml:mi>
<mml:mi>O</mml:mi>
<mml:mi>V</mml:mi>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mfenced>
</mml:mrow>
</mml:math>
</disp-formula>
</p>
<p>In Equation (<xref ref-type="disp-formula" rid="FD3-sensors-16-00216">3</xref>
), <inline-formula><mml:math id="mm18"><mml:mrow><mml:mi>T</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>ψ</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>
is the signal transmission coefficient of the optical filter in receiver, <inline-formula><mml:math id="mm19"><mml:mrow><mml:mi>G</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>ψ</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>
is the receiver optical concentrator gain, and <italic>d</italic>
is the distance between transmitter and receiver. The Equation (<xref ref-type="disp-formula" rid="FD3-sensors-16-00216">3</xref>
) for channel DC gain in the directed LOS link configuration is based on considering the optical transmitter as a single point source, though VLC transmitters tend to be composed by a large LED array in order to improve illumination capacity. Authors in [<xref rid="B22-sensors-16-00216" ref-type="bibr">22</xref>
] compare the channel characteristics of both the single point-source model and the array of LEDs. The results obtained show that the deviations are acceptable in terms of the channel optical path loss, as well as bandwidth. There are differences in terms of Root Mean Square (RMS) delay-spread results, though they remain acceptable as long as the LED array is of moderate size.</p>
</sec>
<sec id="sec2dot1dot2-sensors-16-00216"><title>2.1.2. Receiver Signal to Noise Ratio</title>
<p>Silicon photo-diodes are usually employed in optical receivers to convert the optical signal into an electrical signal, which has an added noise. In VLC systems, there are two main noise sources: thermal noise, <inline-formula><mml:math id="mm20"><mml:msubsup><mml:mi>σ</mml:mi>
<mml:mrow><mml:mi>t</mml:mi>
<mml:mi>h</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>m</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>l</mml:mi>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msubsup>
</mml:math>
</inline-formula>
, and shot noise, <inline-formula><mml:math id="mm21"><mml:msubsup><mml:mi>σ</mml:mi>
<mml:mrow><mml:mi>s</mml:mi>
<mml:mi>h</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msubsup>
</mml:math>
</inline-formula>
. Both noise sources can be modeled as additive white Gaussian noise (AWGN) according to [<xref rid="B20-sensors-16-00216" ref-type="bibr">20</xref>
]. Since both types of noise are uncorrelated, the total added noise can be expressed as the sum of contributions from shot and thermal noise, as expressed in Equation (<xref ref-type="disp-formula" rid="FD4-sensors-16-00216">4</xref>
):<disp-formula id="FD4-sensors-16-00216"><label>(4)</label>
<mml:math id="mm22"><mml:mrow><mml:msubsup><mml:mi>σ</mml:mi>
<mml:mrow><mml:mi>t</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>l</mml:mi>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msubsup>
<mml:mo>=</mml:mo>
<mml:msubsup><mml:mi>σ</mml:mi>
<mml:mrow><mml:mi>t</mml:mi>
<mml:mi>h</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>m</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>l</mml:mi>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msubsup>
<mml:mo>+</mml:mo>
<mml:msubsup><mml:mi>σ</mml:mi>
<mml:mrow><mml:mi>s</mml:mi>
<mml:mi>h</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msubsup>
</mml:mrow>
</mml:math>
</disp-formula>
</p>
<p>Then, the signal to noise ratio (SNR) can be expressed as:
<disp-formula id="FD5-sensors-16-00216"><label>(5)</label>
<mml:math id="mm23"><mml:mrow><mml:mi>S</mml:mi>
<mml:mi>N</mml:mi>
<mml:mi>R</mml:mi>
<mml:mo>=</mml:mo>
<mml:mfrac><mml:msub><mml:mi>P</mml:mi>
<mml:mrow><mml:mi>e</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msubsup><mml:mi>σ</mml:mi>
<mml:mrow><mml:mi>t</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>l</mml:mi>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msubsup>
</mml:mfrac>
<mml:mo>=</mml:mo>
<mml:mfrac><mml:mrow><mml:msup><mml:mi>R</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
<mml:mo>·</mml:mo>
<mml:msubsup><mml:mi>P</mml:mi>
<mml:mi>r</mml:mi>
<mml:mn>2</mml:mn>
</mml:msubsup>
</mml:mrow>
<mml:msubsup><mml:mi>σ</mml:mi>
<mml:mrow><mml:mi>t</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>l</mml:mi>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msubsup>
</mml:mfrac>
</mml:mrow>
</mml:math>
</disp-formula>
</p>
<p>In Equation (<xref ref-type="disp-formula" rid="FD5-sensors-16-00216">5</xref>
), <inline-formula><mml:math id="mm24"><mml:msub><mml:mi>P</mml:mi>
<mml:mrow><mml:mi>e</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula>
is the electrical power of the received signal at receiver’s output, <inline-formula><mml:math id="mm25"><mml:msub><mml:mi>P</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
</mml:math>
</inline-formula>
is the optical power of the signal received by the photo diode, <italic>R</italic>
is the receiver responsivity, and <inline-formula><mml:math id="mm26"><mml:msubsup><mml:mi>σ</mml:mi>
<mml:mrow><mml:mi>t</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>l</mml:mi>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msubsup>
</mml:math>
</inline-formula>
is the total noise power. VLC channel analysis and characterization is an open research line with plenty of contributions, [<xref rid="B23-sensors-16-00216" ref-type="bibr">23</xref>
,<xref rid="B24-sensors-16-00216" ref-type="bibr">24</xref>
,<xref rid="B25-sensors-16-00216" ref-type="bibr">25</xref>
,<xref rid="B26-sensors-16-00216" ref-type="bibr">26</xref>
]. Published works include studies based on the analysis of aspects such as modulations, codifications, SNR, and Bit Error Rate (BER) among others.</p>
</sec>
</sec>
<sec id="sec2dot2-sensors-16-00216"><title>2.2. The Hidden Node Problem in VLC Networks</title>
<p>The hidden node problem is a well known problem in radio wireless networks using channel access mechanisms based on contention techniques as CSMA/CA [<xref rid="B4-sensors-16-00216" ref-type="bibr">4</xref>
]. CSMA/CA based methods are used in most wireless networks such as Wireless LAN (WLAN) [<xref rid="B27-sensors-16-00216" ref-type="bibr">27</xref>
] or sensor networks [<xref rid="B28-sensors-16-00216" ref-type="bibr">28</xref>
]. The hidden node problem is caused by signal coverage constraints, resulting in network nodes not being able to detect transmissions performed by other nodes. Thus, a node performing a carrier detection to check the status of the communication channel may detect the channel idle and continue to transmit, leading to possible collisions. Most research has been undertaken to evaluate the effects of this problem in radio frequency based networks, such as [<xref rid="B5-sensors-16-00216" ref-type="bibr">5</xref>
,<xref rid="B6-sensors-16-00216" ref-type="bibr">6</xref>
,<xref rid="B29-sensors-16-00216" ref-type="bibr">29</xref>
,<xref rid="B30-sensors-16-00216" ref-type="bibr">30</xref>
,<xref rid="B31-sensors-16-00216" ref-type="bibr">31</xref>
]. In VLC networks, the hidden node problem is also produced in a similar way to radio wireless networks, but, in this case, the problem is further aggravated by the directive characteristics of optical transmitters and receivers.</p>
<p><xref ref-type="fig" rid="sensors-16-00216-f004">Figure 4</xref>
shows a sample scenario of a VLC network which presents the hidden node problem. In this example, two user terminals try to make an uplink transmission to a data/illumination infrastructure device, located at the ceiling of the enclosure. All nodes in the network employ a medium access control procedure based on CSMA/CA method.</p>
<p>In <xref ref-type="fig" rid="sensors-16-00216-f004">Figure 4</xref>
, if terminal 2 performs a carrier detect procedure while terminal 1 transmits to the infrastructure, due to the directivity of terminal 1 optical transmitter <inline-formula><mml:math id="mm27"><mml:mrow><mml:mo stretchy="false">(</mml:mo>
<mml:msub><mml:mi>θ</mml:mi>
<mml:mrow><mml:mn>1</mml:mn>
<mml:mo>/</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>
and terminal 2 optical receiver (FOV), transmitted signal of terminal 1 is not detected by terminal 2. Consequently, terminal 2 will consider the medium is idle and will transmit at the same time terminal 1 is transmitting, thus producing a collision at the infrastructure. IEEE 802.15.7 MAC layer defines a medium access control procedure based on the CSMA/CA method; therefore, uplink transmissions made according to this procedure are susceptible to be affected by the hidden node problem. This situation was revealed in some works published during the standard development [<xref rid="B32-sensors-16-00216" ref-type="bibr">32</xref>
] and in some documents [<xref rid="B33-sensors-16-00216" ref-type="bibr">33</xref>
] with proposals to take into consideration by the group responsible of developing the standard. However, in the current version of the standard [<xref rid="B3-sensors-16-00216" ref-type="bibr">3</xref>
], there are not specific mechanisms designed to solve this problem. To the best of our knowledge, there are not any published works that evaluate the impact of hidden nodes in performance of uplink transmissions made using CSMA/CA in the IEEE 802.15.7 standard.</p>
<fig id="sensors-16-00216-f004" position="float"><label>Figure 4</label>
<caption><p>Example of scenario with hidden nodes in a VLC network.</p>
</caption>
<graphic xlink:href="sensors-16-00216-g004"></graphic>
</fig>
</sec>
</sec>
<sec id="sec3-sensors-16-00216"><title>3. IEEE 802.15.7 Overview</title>
<p>This standard defines a PHY and MAC layer for short range optical wireless communications using visible light, employing free space as propagation medium. Three network topologies are defined: star, peer-to-peer and broadcast. These topologies are shown in <xref ref-type="fig" rid="sensors-16-00216-f005">Figure 5</xref>
, and their main characteristics are summarized as follows:
<list list-type="bullet"><list-item><p><bold>Star</bold>
: communication is made between several devices and one central controller, called the coordinator, which is also used as an illumination infrastructure. The rest of devices are typically mobile terminals powered by batteries.</p>
</list-item>
<list-item><p><bold>Peer-to-peer</bold>
: allows two devices to communicate, provided they are within reach of each other. One of the devices acts as the communication coordinator</p>
</list-item>
<list-item><p><bold>Broadcast</bold>
: one coordinator sends data to one or several devices in a uni-directional way.</p>
</list-item>
</list>
</p>
<fig id="sensors-16-00216-f005" position="float"><label>Figure 5</label>
<caption><p>Network topologies defined in IEEE 802.15.7.</p>
</caption>
<graphic xlink:href="sensors-16-00216-g005"></graphic>
</fig>
<sec id="sec3dot1-sensors-16-00216"><title>3.1. PHY Layer</title>
<p>The IEEE 802.15.7 standard PHY layer is responsible for several functions, such as transmission and reception via the optical medium, activation and deactivation of the optical transceiver, and detection of the state of the transmission channel (idle/busy).</p>
</sec>
<sec id="sec3dot2-sensors-16-00216"><title>3.2. PHY Layer Operation Modes</title>
<p>The PHY layer supports three operation modes, which allow the use of different transmission rates and include support for different types of optical devices and operating environments:
<list list-type="bullet"><list-item><p><bold>PHY I</bold>
: intended for outdoor usage with low data rates (from 11.6 Kbps to 266.6 Kbps).</p>
</list-item>
<list-item><p><bold>PHY II</bold>
: intended for indoor usage with moderate data rates (from 1.25 Mbps to 96 Mbps).</p>
</list-item>
<list-item><p><bold>PHY III</bold>
: for applications with multiple optical transmitters and receivers working on different frequencies (colors). It uses the technique of modulation Color-Shift Keying (CSK) [<xref rid="B34-sensors-16-00216" ref-type="bibr">34</xref>
], with transmission rates from 12 Mbps to 96 Mbps.</p>
</list-item>
</list>
</p>
<p>Each operation mode of the PHY layer supports the use of different combinations of transmission rates, optical clock frequencies, modulation schemes, line codes, and error correction coding techniques. Each one of the aforementioned parameters settings is designated with an operation mode identifier or Modulation Coding Scheme Identifier (MCS-ID).</p>
<sec id="sec3dot2dot1-sensors-16-00216"><title>3.2.1. Idle Patterns and Brightness Control</title>
<p>The operation of IEEE 802.15.7 devices of infrastructure type—such as the coordinator—must be compatible with its use as a lighting source. According to the standard, infrastructure devices must transmit idle patterns during the time intervals they receive data or do not have transmission activity, in order to maintain visibility, ensure brightness control, and avoid visible flicker to the human eye. The standard allows idle patterns to be in-band or out-of-band, in relation to the frequency spectrum of the optical carrier modulating signal, <italic>i.e.</italic>
, according to the spectrum of the optical detector output signal. In-band idle patterns do not require changes in the frequency of the optical clock, and remain within the frequency range the receiver circuits can accept. Out-of-band idle patterns maintain visibility using lower clock frequencies (can even use direct current) and do not lie in the receiver’s modulation-domain.</p>
</sec>
</sec>
<sec id="sec3dot3-sensors-16-00216"><title>3.3. MAC Layer</title>
<p>Among the functions of the IEEE 802.15.7 MAC, the task of regulating optical medium access is the most important, allowing either scheduled or random access transmissions. Four random access methods are defined: unslotted random access, slotted random access, unslotted CSMA/CA and slotted CSMA/CA.</p>
<sec id="sec3dot3dot1-sensors-16-00216"><title>3.3.1. Superframe Structure</title>
<p>The MAC layer allows the use of a time based structure called superframe, whose characteristics are defined by the coordinator. The superframe is a timing pattern that is delimited by beacon frames. The coordinator transmits beacon frames at the beginning of each superframe to synchronize devices, identify the network and define the characteristics of the superframe. The superframe can have an active part and an inactive part. The active part is divided in 16 equally spaced intervals or time slots, during which all communications are performed. The inactive part allows devices to pass to an energy saving state. The active part is divided into a Contention Access Period (CAP), where devices compete with each other to access the channel using a random access procedure, and a Contention Free Period (CFP), intended for applications with latency and bandwidth requirements. In the CFP channel, access is centrally managed by the coordinator through the use of time slots called Guaranteed Time Slot (GTS). The structure of the superframe is defined by the values of several parameters, described below:
<list list-type="bullet"><list-item><p>The attribute <italic>macBeaconOrder, BO</italic>
, describes the interval used by the coordinator to transmit beacon frames. <italic>BO</italic>
and <italic>aBaseSuperframeDuration</italic>
attributes define the time interval between beacon frames, <italic>BI</italic>
(beacon interval, specified in clock cycles) according to the following expression:
<disp-formula id="FD6-sensors-16-00216"><label>(6)</label>
<mml:math id="mm28"><mml:mtable><mml:mtr><mml:mtd columnalign="left"><mml:mrow><mml:mi>B</mml:mi>
<mml:mi>I</mml:mi>
<mml:mo>=</mml:mo>
<mml:mi>a</mml:mi>
<mml:mi>B</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>p</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>f</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>m</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>D</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>n</mml:mi>
<mml:mo>×</mml:mo>
<mml:msup><mml:mn>2</mml:mn>
<mml:mrow><mml:mi>B</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:mtd>
<mml:mtd columnalign="left"><mml:mrow><mml:mi>f</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>r</mml:mi>
<mml:mo>:</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo>≤</mml:mo>
<mml:mi>B</mml:mi>
<mml:mi>O</mml:mi>
<mml:mo>≤</mml:mo>
<mml:mn>14</mml:mn>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr><mml:mtd columnalign="left"><mml:mrow><mml:mi>If</mml:mi>
<mml:mspace width="4.pt"></mml:mspace>
<mml:mi>B</mml:mi>
<mml:mi>O</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>15</mml:mn>
<mml:mspace width="4.pt"></mml:mspace>
<mml:mtext>the</mml:mtext>
<mml:mspace width="4.pt"></mml:mspace>
<mml:mtext>coordinator</mml:mtext>
<mml:mspace width="4.pt"></mml:mspace>
<mml:mtext>does</mml:mtext>
<mml:mspace width="4.pt"></mml:mspace>
<mml:mtext>not</mml:mtext>
<mml:mspace width="4.pt"></mml:mspace>
<mml:mtext>transmit</mml:mtext>
<mml:mspace width="4.pt"></mml:mspace>
<mml:mtext>beacon</mml:mtext>
<mml:mspace width="4.pt"></mml:mspace>
<mml:mtext>frames</mml:mtext>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:mtd>
<mml:mtd></mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:math>
</disp-formula>
where <italic>aBaseSuperframeDuration</italic>
is defined as the number of clock cycles that form the superframe when the attribute <italic>macSuperframeOrder</italic>
(see below) is equal to 0.</p>
</list-item>
<list-item><p>The attribute <italic>macSuperframeOrder, SO</italic>
, defines the length of the active part of the superframe, including the beacon frame. The relationship between the value of <italic>SO</italic>
and the duration of the active part of the superframe, <italic>SD</italic>
(superframe duration, measured in clock cycles) is given by:
<disp-formula id="FD7-sensors-16-00216"><label>(7)</label>
<mml:math id="mm29"><mml:mtable><mml:mtr><mml:mtd columnalign="left"><mml:mrow><mml:mi>S</mml:mi>
<mml:mi>D</mml:mi>
<mml:mo>=</mml:mo>
<mml:mi>a</mml:mi>
<mml:mi>B</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>p</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>f</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>m</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>D</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>n</mml:mi>
<mml:mo>×</mml:mo>
<mml:msup><mml:mn>2</mml:mn>
<mml:mrow><mml:mi>S</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:mtd>
<mml:mtd columnalign="left"><mml:mrow><mml:mi>f</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>r</mml:mi>
<mml:mo>:</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo>≤</mml:mo>
<mml:mi>S</mml:mi>
<mml:mi>O</mml:mi>
<mml:mo>≤</mml:mo>
<mml:mi>B</mml:mi>
<mml:mi>O</mml:mi>
<mml:mo>≤</mml:mo>
<mml:mn>14</mml:mn>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr><mml:mtd columnalign="left"><mml:mrow><mml:mtext>If</mml:mtext>
<mml:mspace width="4.pt"></mml:mspace>
<mml:mi>S</mml:mi>
<mml:mi>O</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>15</mml:mn>
<mml:mspace width="4.pt"></mml:mspace>
<mml:mtext>the</mml:mtext>
<mml:mspace width="4.pt"></mml:mspace>
<mml:mtext>frame</mml:mtext>
<mml:mspace width="4.pt"></mml:mspace>
<mml:mtext>does</mml:mtext>
<mml:mspace width="4.pt"></mml:mspace>
<mml:mtext>not</mml:mtext>
<mml:mspace width="4.pt"></mml:mspace>
<mml:mtext>have</mml:mtext>
<mml:mspace width="4.pt"></mml:mspace>
<mml:mtext>active</mml:mtext>
<mml:mspace width="4.pt"></mml:mspace>
<mml:mtext>part</mml:mtext>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:mtd>
<mml:mtd></mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:math>
</disp-formula>
</p>
</list-item>
</list>
</p>
<p>The beacon frame is transmitted at the beginning of the first slot of the superframe without the use of any random access method. The CAP begins immediately after the beacon frame, and the CFP—if it exists—begins following the CAP and extends to the end of the active part of the superframe.</p>
</sec>
<sec id="sec3dot3dot2-sensors-16-00216"><title>3.3.2. Random Channel Access</title>
<p>When transmitting during the CAP of the superframe, the MAC layer uses the slotted version of the random access algorithm defined in the standard. This algorithm is implemented using units of time called backoff periods, where one backoff period is equal to <italic>aUnitBackoffPeriod</italic>
clock cycles:<disp-formula id="FD8-sensors-16-00216"><label>(8)</label>
<mml:math id="mm30"><mml:mrow><mml:mi>a</mml:mi>
<mml:mi>U</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>B</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>c</mml:mi>
<mml:mi>k</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>f</mml:mi>
<mml:mi>f</mml:mi>
<mml:mi>P</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>20</mml:mn>
<mml:mspace width="4.pt"></mml:mspace>
<mml:mtext>optical</mml:mtext>
<mml:mspace width="4.pt"></mml:mspace>
<mml:mtext>clock</mml:mtext>
<mml:mspace width="4.pt"></mml:mspace>
<mml:mtext>cycles</mml:mtext>
</mml:mrow>
</mml:math>
</disp-formula>
</p>
<p><xref ref-type="fig" rid="sensors-16-00216-f006">Figure 6</xref>
shows the flow chart of the slotted random access algorithm used in IEEE 802.15.7, which is briefly explained next. During every frame transmission attempt, each device maintains two variables:
<list list-type="bullet"><list-item><p><italic>NB</italic>
(Number of Backoffs): counts the number of times the medium access algorithm has made a backoff—random delay—during the current transmission attempt. This variable is initialized to zero at the beginning of each new frame transmission attempt.</p>
</list-item>
<list-item><p><italic>BE</italic>
(Backoff Exponent): related to the number of backoff periods, a device shall wait before attempting to access/assess a channel. This variable is initialized to the value of macMinBE attribute.</p>
</list-item>
</list>
</p>
<p>Access procedure begins with the initialization of NB and BE variables. Next, backoff periods in the device are aligned with the beginning of the superframe. Then, the MAC layer shall delay for a random number of complete backoff periods in the range <inline-formula><mml:math id="mm31"><mml:mrow><mml:mo>[</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo>,</mml:mo>
<mml:msup><mml:mn>2</mml:mn>
<mml:mrow><mml:mi>B</mml:mi>
<mml:mi>E</mml:mi>
</mml:mrow>
</mml:msup>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>]</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>
. If carrier detection is enabled, the PHY layer is requested to perform the CCA (Clear Channel Assessment) function to check if the channel is idle and available to transmit. If the PHY layer evaluates that the channel is busy, the MAC layer will increase variables <italic>NB</italic>
and <italic>BE</italic>
, ensuring that <italic>BE</italic>
does not exceed the value of <italic>macMaxBE</italic>
attribute. If <italic>NB</italic>
is less than or equal to the value of the <italic>macMaxCSMABackoffs</italic>
attribute, a new backoff delay will begin. If <italic>NB</italic>
is greater than <italic>macMaxCSMABackoffs</italic>
, the algorithm will terminate with a channel access failure status. If the PHY layer evaluates that the channel is available—or if the CCA is not active—the frame will be transmitted. After transmitting the frame, if enabled the use of acknowledgement (ACK), the MAC layer will wait for at most macAckWaitDuration optical clocks for the corresponding ACK. In case the ACK frame is received, the procedure will finish successfully. In case the ACK frame is not received, <italic>NB</italic>
and <italic>BE</italic>
variables will be increased to perform a new backoff, provided that NB is not greater than <italic>macMaxCSMABackoffs</italic>
.</p>
<p>In our developed simulation model, we have added the necessary steps to the algorithm in order to verify that the maximum number of frames retransmissions limit is not exceeded, in accordance with clause number 5.1.7.5 of the standard. This clause specifies that when the ACK frame is not received, the data frame should be retransmitted, repeating this sequence up to a maximum of macMaxFrameRetries times. If a data transfer attempt fails a total of <inline-formula><mml:math id="mm32"><mml:mrow><mml:mo stretchy="false">(</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>+</mml:mo>
<mml:mi>m</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>c</mml:mi>
<mml:mi>M</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>x</mml:mi>
<mml:mi>F</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>m</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>R</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>
times, the MAC layer will finish the procedure with a frame transmission failure. To fulfill this requirement, we have added the numRetries variable, which accounts for the number of frame retransmissions, adding also the necessary steps to verify that the limit of <italic>macMaxFrameRetries</italic>
retransmissions is not exceeded (marked in blue color in the flow chart).</p>
<fig id="sensors-16-00216-f006" position="float"><label>Figure 6</label>
<caption><p>Random access algorithm implemented in our simulation model.</p>
</caption>
<graphic xlink:href="sensors-16-00216-g006"></graphic>
</fig>
</sec>
</sec>
</sec>
<sec id="sec4-sensors-16-00216"><title>4. Simulation Model</title>
<p>We built our simulator using OMNET++ simulation framework [<xref rid="B35-sensors-16-00216" ref-type="bibr">35</xref>
] from the model developed by [<xref rid="B36-sensors-16-00216" ref-type="bibr">36</xref>
], designed for sensor networks based on the IEEE 802.15.4 standard, due to the similarities that exist between the architectures of IEEE 802.15.7 and IEEE 802.15.4 standards.</p>
<sec id="sec4dot1-sensors-16-00216"><title>4.1. Characteristics of Simulation Scenarios</title>
<p>Our developed simulation model has been designed with the following premises:
<list list-type="bullet"><list-item><p>We have chosen IEEE 802.15.7 star topology, due to its importance and wide range of applications.</p>
</list-item>
<list-item><p>For the MAC layer, we opted to use the superframe, since it allows the use of both contention (CAP) and no contention (CFP) access methods. In addition, the use of the superframe enables devices to enter the energy save state during the idle period.</p>
</list-item>
</list>
</p>
<p>Our developed simulation model has been designed to evaluate the performance of uplink transmissions during the CAP of the superframe. For this purpose, we have defined four basic scenarios that differ in the number of devices, <italic>N</italic>
, that communicate with the coordinator. We have defined scenarios with <inline-formula><mml:math id="mm33"><mml:mrow><mml:mi>N</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>4</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>8</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>12</mml:mn>
<mml:mspace width="4.pt"></mml:mspace>
<mml:mtext>and</mml:mtext>
<mml:mspace width="4.pt"></mml:mspace>
<mml:mn>16</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>
devices, respectively. In all scenarios, network nodes are contained in an enclosure of 4 m height by 5 m wide and 5 m long. The coordinator is located in the center of the ceiling and points towards the ground. Devices point to the coordinator and are located in fixed positions distributed according to a grid pattern on a plane situated at the height of 1 m above the ground. <xref ref-type="fig" rid="sensors-16-00216-f007">Figure 7</xref>
a illustrates the simulated network layout of the scenario with four devices. <xref ref-type="fig" rid="sensors-16-00216-f007">Figure 7</xref>
b shows the top view of scenarios with <inline-formula><mml:math id="mm34"><mml:mrow><mml:mn>4</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>8</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>12</mml:mn>
<mml:mspace width="4.pt"></mml:mspace>
<mml:mtext>and</mml:mtext>
<mml:mspace width="4.pt"></mml:mspace>
<mml:mn>16</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>
devices. All scenarios share the same configuration parameters for PHY and MAC (taking into account that the orientation vector of each device changes with its position).</p>
<fig id="sensors-16-00216-f007" position="float"><label>Figure 7</label>
<caption><p>(<bold>a</bold>
) Star network scenario with 4 devices in 4 m × 5 m × 5 m enclosure and (<bold>b</bold>
) top-view layout for scenarios with 4, 8, 12 and 16 devices.</p>
</caption>
<graphic xlink:href="sensors-16-00216-g007"></graphic>
</fig>
<p>Next, we present the most important features of our simulation model, which are needed to adequately interpret the results obtained from the simulations performed.</p>
</sec>
<sec id="sec4dot2-sensors-16-00216"><title>4.2. Optical Channel Model</title>
<p>The transmission medium is modeled as free space without obstacles. We chose the directed LOS link configuration to model the optical signal propagation, requiring a line of sight between each device and the coordinator. We have considered the direct component of the received signal to calculate the power of the received optical signal, not considering the existence of reflections. According to the results presented in [<xref rid="B20-sensors-16-00216" ref-type="bibr">20</xref>
], at least 90% of total received optical power is direct light in VLC when using a receiver field of view (FOV) of 60<inline-formula><mml:math id="mm35"><mml:msup><mml:mrow></mml:mrow>
<mml:mo>°</mml:mo>
</mml:msup>
</mml:math>
</inline-formula>
. Therefore, to ensure the validity of our implemented model we have configured all optical receivers using the value of 60<inline-formula><mml:math id="mm36"><mml:msup><mml:mrow></mml:mrow>
<mml:mo>°</mml:mo>
</mml:msup>
</mml:math>
</inline-formula>
for FOV. The adopted optical channel model facilitates reaching high transmission speeds, since the effects of multipath distortion on the optical signal are not considered. Among its drawbacks is the limitation in device mobility, since they must be permanently oriented to the coordinator. To meet this requirement, devices in our simulation model are able to automatically point to the coordinator. Calculation of received power considering only direct component of the signal has the additional benefit of improving the efficiency of the implemented simulation model. The computational load required to run simulations of scenarios with multiple nodes including the functionality of different layers of the architecture is significantly reduced.</p>
</sec>
<sec id="sec4dot3-sensors-16-00216"><title>4.3. Application Layer Traffic Characterization</title>
<p>In order to evaluate the performance of uplink communications in our simulation model, the application layer on each device generates data messages destined to the coordinator. The time intervals between generated messages follow an exponential probability distribution. Each message is encapsulated in the MAC Service Data Unit (MSDU) of one data frame. All devices in all scenarios use the same application layer settings. This way, in a scenario with <italic>N</italic>
devices employing an application message size of <italic>L</italic>
bits and average time between messages of <inline-formula><mml:math id="mm37"><mml:msub><mml:mi>t</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
</mml:math>
</inline-formula>
seconds, total offered load <inline-formula><mml:math id="mm38"><mml:msub><mml:mi>T</mml:mi>
<mml:mi>L</mml:mi>
</mml:msub>
</mml:math>
</inline-formula>
normalized to the physical layer transmission rate <inline-formula><mml:math id="mm39"><mml:msub><mml:mi>R</mml:mi>
<mml:mi>b</mml:mi>
</mml:msub>
</mml:math>
</inline-formula>
is:
<disp-formula id="FD9-sensors-16-00216"><label>(9)</label>
<mml:math id="mm40"><mml:mrow><mml:msub><mml:mi>T</mml:mi>
<mml:mi>L</mml:mi>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mi>N</mml:mi>
<mml:mo>·</mml:mo>
<mml:mfrac><mml:mi>L</mml:mi>
<mml:mrow><mml:msub><mml:mi>t</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
<mml:mo>·</mml:mo>
<mml:msub><mml:mi>R</mml:mi>
<mml:mi>B</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfrac>
<mml:mrow><mml:mo stretchy="false">(</mml:mo>
<mml:mo>%</mml:mo>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
</p>
</sec>
</sec>
<sec id="sec5-sensors-16-00216"><title>5. Simulation Results Analysis</title>
<p>In this section, we present and analyze the results obtained from simulations made with our implemented model. The effects of the hidden node problem are evaluated by comparing simulation results when there are not hidden nodes with results when there are hidden nodes in the network. To ensure the reliability of the results, several independent simulations have been replicated for the same set of input parameters, averaging output result values. Simulation time was at least 400 s per replica.</p>
<sec id="sec5dot1-sensors-16-00216"><title>5.1. Simulation Parameters</title>
<p>This section presents the main configuration parameters used in the developed simulation model.</p>
<sec id="sec5dot1dot1-sensors-16-00216"><title>5.1.1. PHY Layer Simulation Parameters</title>
<p><xref ref-type="table" rid="sensors-16-00216-t001">Table 1</xref>
shows the main configuration parameters of PHY layer used in all simulation scenarios. We selected the PHY II operating mode, intended for both indoor and outdoor environments, using MCS-ID number 16, since support for the minimum clock and data rates for a given PHY is mandatory. Optical transmission power of devices is of 30 mW, in accordance with the limitations of power consumption in battery-powered mobile terminals. According to the optical channel model used, transmitters’ directivity is characterized by its half power angle, <inline-formula><mml:math id="mm41"><mml:msub><mml:mi>θ</mml:mi>
<mml:mrow><mml:mn>1</mml:mn>
<mml:mo>/</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula>
, while receivers’ directivity is defined by its FOV. According to [<xref rid="B20-sensors-16-00216" ref-type="bibr">20</xref>
], both parameters are assigned a value of 60<inline-formula><mml:math id="mm42"><mml:msup><mml:mrow></mml:mrow>
<mml:mo>°</mml:mo>
</mml:msup>
</mml:math>
</inline-formula>
, to ensure validity of the implemented channel model, since the calculation of received optical power takes into account only the direct component of the signal. In order to simplify the calculation process of the model, the values used for the concentrator gain <inline-formula><mml:math id="mm43"><mml:mrow><mml:mo stretchy="false">(</mml:mo>
<mml:mi>G</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>
and the transmission coefficient of the optical filter <inline-formula><mml:math id="mm44"><mml:mrow><mml:mo stretchy="false">(</mml:mo>
<mml:mi>T</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>
are considered to be constants, so they do not depend on the angle of incidence <inline-formula><mml:math id="mm45"><mml:mrow><mml:mo stretchy="false">(</mml:mo>
<mml:mi>ψ</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>
.</p>
<table-wrap id="sensors-16-00216-t001" position="float"><object-id pub-id-type="pii">sensors-16-00216-t001_Table 1</object-id>
<label>Table 1</label>
<caption><p>Main configuration parameters of the physical (PHY) layer.</p>
</caption>
<table frame="hsides" rules="groups"><thead><tr><th align="center" valign="middle" style="border-bottom:solid thin;border-top:solid thin" rowspan="1" colspan="1">Parameter</th>
<th align="center" valign="middle" style="border-bottom:solid thin;border-top:solid thin" rowspan="1" colspan="1">Value</th>
</tr>
</thead>
<tbody><tr><td align="center" valign="middle" rowspan="1" colspan="1">Transmission rate</td>
<td align="center" valign="middle" rowspan="1" colspan="1">1.25 Mbps</td>
</tr>
<tr><td align="center" valign="middle" rowspan="1" colspan="1">Optical clock rate</td>
<td align="center" valign="middle" rowspan="1" colspan="1">3.75 MHz</td>
</tr>
<tr><td align="center" valign="middle" rowspan="1" colspan="1">Coordinator optical transmission power</td>
<td align="center" valign="middle" rowspan="1" colspan="1">1500 mW</td>
</tr>
<tr><td align="center" valign="middle" rowspan="1" colspan="1">Devices optical transmission power</td>
<td align="center" valign="middle" rowspan="1" colspan="1">30 mW</td>
</tr>
<tr><td align="center" valign="middle" rowspan="1" colspan="1">Half Power Angle <inline-formula><mml:math id="mm46"><mml:msub><mml:mi>θ</mml:mi>
<mml:mrow><mml:mn>1</mml:mn>
<mml:mo>/</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula>
</td>
<td align="center" valign="middle" rowspan="1" colspan="1">60<inline-formula><mml:math id="mm47"><mml:msup><mml:mrow></mml:mrow>
<mml:mo>°</mml:mo>
</mml:msup>
</mml:math>
</inline-formula>
</td>
</tr>
<tr><td align="center" valign="middle" rowspan="1" colspan="1">Field of Vision (FOV)</td>
<td align="center" valign="middle" rowspan="1" colspan="1">60<inline-formula><mml:math id="mm48"><mml:msup><mml:mrow></mml:mrow>
<mml:mo>°</mml:mo>
</mml:msup>
</mml:math>
</inline-formula>
</td>
</tr>
<tr><td align="center" valign="middle" rowspan="1" colspan="1">Photo detector area <inline-formula><mml:math id="mm49"><mml:mrow><mml:mo stretchy="false">(</mml:mo>
<mml:mi>A</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center" valign="middle" rowspan="1" colspan="1">1 cm<inline-formula><mml:math id="mm50"><mml:msup><mml:mrow></mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:math>
</inline-formula>
</td>
</tr>
<tr><td align="center" valign="middle" rowspan="1" colspan="1">Photo detector responsivity <inline-formula><mml:math id="mm51"><mml:mrow><mml:mo stretchy="false">(</mml:mo>
<mml:mi>R</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center" valign="middle" rowspan="1" colspan="1">0.54 A/W</td>
</tr>
<tr><td align="center" valign="middle" rowspan="1" colspan="1">Optical concentrator gain <inline-formula><mml:math id="mm52"><mml:mrow><mml:mo stretchy="false">(</mml:mo>
<mml:mi>G</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center" valign="middle" rowspan="1" colspan="1">15</td>
</tr>
<tr><td align="center" valign="middle" rowspan="1" colspan="1">Optical filter transmission coefficient <inline-formula><mml:math id="mm53"><mml:mrow><mml:mo stretchy="false">(</mml:mo>
<mml:mi>T</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center" valign="middle" rowspan="1" colspan="1">1</td>
</tr>
<tr><td align="center" valign="middle" rowspan="1" colspan="1">Clear Channel Assessment (CCA) function duration</td>
<td align="center" valign="middle" rowspan="1" colspan="1">8 clock cycles</td>
</tr>
<tr><td align="center" valign="middle" rowspan="1" colspan="1"><italic>aTurnaroundTime-TX-RX</italic>
</td>
<td align="center" valign="middle" rowspan="1" colspan="1">0 clock cycles</td>
</tr>
<tr><td align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1"><italic>aTurnaroundTime-RX-TX</italic>
</td>
<td align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1">8 clock cycles</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>The values selected to define the rest of characteristics of optical transmitters and receivers are commonly used values to characterize VLC transmitters and receivers, similar to those used in [<xref rid="B37-sensors-16-00216" ref-type="bibr">37</xref>
,<xref rid="B38-sensors-16-00216" ref-type="bibr">38</xref>
,<xref rid="B39-sensors-16-00216" ref-type="bibr">39</xref>
]. Lastly, the contribution of noise in the channel (thermal and shot noise) has been considered as negligible in all simulations. Thus, the implementation of the simulation model is simplified, ensuring also that failures in frame transmissions are only caused by collisions (simultaneous transmissions on the network). In this way, noise level or transmission errors do not affect the simulation results.</p>
</sec>
<sec id="sec5dot1dot2-sensors-16-00216"><title>5.1.2. MAC Layer Simulation Parameters</title>
<p>Regarding the configuration of the superframe, both BO (macBeaconOrder) and SO (macSuperframeOrder) parameters are set with the same value, so that there is no inactive period in the superframe. Since this work is intended to evaluate the performance of uplink communications during the CAP, we decided not to assign any slot of the superframe to the CFP. Thus, the entire superframe is available to perform transmissions using the CSMA/CA based slotted random algorithm. The value assigned to both the BO and SO parameters is:
<disp-formula id="FD10-sensors-16-00216"><label>(10)</label>
<mml:math id="mm54"><mml:mrow><mml:mi>B</mml:mi>
<mml:mi>O</mml:mi>
<mml:mo>=</mml:mo>
<mml:mi>S</mml:mi>
<mml:mi>O</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>9</mml:mn>
</mml:mrow>
</mml:math>
</disp-formula>
</p>
<p>We performed several simulations using larger values for both <italic>BO</italic>
and <italic>SO</italic>
parameters, up to the maximum limit allowed by the standard when the superframe is used (<italic>SO = BO =</italic>
14). We checked that network performance tends to improve as the value used for both BO and BO increases. The rest of the MAC layer configuration parameters were chosen according to the default values defined in the standard. <xref ref-type="table" rid="sensors-16-00216-t002">Table 2</xref>
shows the values used for the main configuration parameters of the MAC layer.</p>
<table-wrap id="sensors-16-00216-t002" position="float"><object-id pub-id-type="pii">sensors-16-00216-t002_Table 2</object-id>
<label>Table 2</label>
<caption><p>Main configuration parameters of the medium access control (MAC) layer.</p>
</caption>
<table frame="hsides" rules="groups"><thead><tr><th align="center" valign="middle" style="border-bottom:solid thin;border-top:solid thin" rowspan="1" colspan="1">Parameter</th>
<th align="center" valign="middle" style="border-bottom:solid thin;border-top:solid thin" rowspan="1" colspan="1">Value</th>
</tr>
</thead>
<tbody><tr><td align="center" valign="middle" rowspan="1" colspan="1"><italic>macMaxBE</italic>
</td>
<td align="center" valign="middle" rowspan="1" colspan="1">5</td>
</tr>
<tr><td align="center" valign="middle" rowspan="1" colspan="1"><italic>macMinBE</italic>
</td>
<td align="center" valign="middle" rowspan="1" colspan="1">3</td>
</tr>
<tr><td align="center" valign="middle" rowspan="1" colspan="1"><italic>macMaxCSMABackoffs</italic>
</td>
<td align="center" valign="middle" rowspan="1" colspan="1">4</td>
</tr>
<tr><td align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1"><italic>macMaxFrameRetries</italic>
</td>
<td align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1">3</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
<sec id="sec5dot1dot3-sensors-16-00216"><title>5.1.3. Application Layer Simulation Parameters</title>
<p>Application message sizes of 512 bytes, 1024 bytes and 1500 bytes were used for simulations (same size for all devices). The largest message size—1500 bytes—was selected according to the maximum transmission unit of the Ethernet standard. Simulation results did not vary significantly depending on application message size, since variation margin was below 5%. Hence, we decided to present here only the results obtained with the intermediate message size of 1024 bytes.</p>
<p>The IEEE802.15.7 standard limits the frame size (PHY layer SDU) to 65,535 bytes when PHY II and PHY III is used. When PHY I is used, the maximum frame size is 1023 bytes.</p>
</sec>
</sec>
<sec id="sec5dot2-sensors-16-00216"><title>5.2. Simulation Metrics Evaluated</title>
<p>Network performance was evaluated by means of the following metrics:
<list list-type="bullet"><list-item><p>End-to-end goodput: calculated as the average number of bits of application layer messages received per unit time in the coordinator. This value is normalized and expressed as a percentage of the transmission rate used in the PHY layer.</p>
</list-item>
<list-item><p>End-to-end message loss rate: percentage of application messages generated in devices not received by the coordinator. Packets are not received by the coordinator due to the following reasons: because there is an overflow in the queue storing the messages to be transmitted by the MAC layer, due to channel access failures (when <italic>macMaxCSMABackoff</italic>
limit is exceeded), or due to frame transmission failures (when <italic>macMaxFrameRetries</italic>
limit is exceeded).</p>
</list-item>
<list-item><p>CSMA/CA statistics: obtained from the execution of the random access algorithm in each device. Example statistics are: the percentage of successfully transmitted frames, the percentage of collisions (ACK frames not received), the percentage of channel access failures and the percentage of frame transmission failures.</p>
</list-item>
<list-item><p>Energy consumption: calculated from consumed current by the optical transceiver in each device. Consumption depends on the states through which the transceiver passes along simulation time.</p>
</list-item>
</list>
</p>
</sec>
<sec id="sec5dot3-sensors-16-00216"><title>5.3. Performance of Uplink Communications with No Hidden Nodes</title>
<p>In order to exclude the existence of hidden nodes in the network due to the directivity of the optical transmitters and receivers, the simulated channel model was modified to remove all directivity characteristics in them. Additionally, devices were configured with an optical transmission power of 150 mW to prevent the occurrence of hidden nodes due to the limitation on the optical signal coverage. Using the described channel model, we verified that each and every device in the network detects all transmissions from all other devices in all of the simulation scenarios. Hence, the existence of hidden nodes is discarded. Although the employed channel model does not match any link configuration used in VLC networks, it allows establishing the simulation conditions that guarantee the non-existence of hidden nodes in the network. The simulation results achieved with these conditions will be compared with the results of simulations performed employing the LOS channel model, in order to assess the impact of hidden nodes on network performance.</p>
<sec id="sec5dot3dot1-sensors-16-00216"><title>5.3.1. Goodput and Message Loss Rate</title>
<p><xref ref-type="fig" rid="sensors-16-00216-f008">Figure 8</xref>
shows goodput values obtained from simulations performed in the four scenarios, plotted as a function of network load. As can be seen, the goodput increases as network load does, although it is noted that higher load values imply lower goodput on scenarios with more devices on the network. This is because the more devices that are in the network, the higher the number of collisions for the same network load, as can be seen in the statistics obtained from the execution of the CSMA/CA algorithm shown in <xref ref-type="table" rid="sensors-16-00216-t003">Table 3</xref>
(see <xref ref-type="sec" rid="sec5dot3dot2-sensors-16-00216">Section 5.3.2</xref>
below).</p>
<fig id="sensors-16-00216-f008" position="float"><label>Figure 8</label>
<caption><p>Goodput as a function of network load, with no hidden nodes.</p>
</caption>
<graphic xlink:href="sensors-16-00216-g008"></graphic>
</fig>
</sec>
<sec id="sec5dot3dot2-sensors-16-00216"><title>5.3.2. CSMA/CA Statistics</title>
<p>In order to analyze how the CSMA/CA algorithm affects goodput and message loss rate, detailed performance statistics have been obtained in each device. <xref ref-type="table" rid="sensors-16-00216-t003">Table 3</xref>
shows statistical results for scenarios with four and 16 devices, obtained from three network load values: 10%, 50% and 200%. Values of statistics shown were calculated by averaging the results from all the devices in the network. <xref ref-type="table" rid="sensors-16-00216-t003">Table 3</xref>
shows the following statistical results:<list list-type="bullet"><list-item><p>Successfully transmitted frames: percentage of data frames which have been transmitted by the device and acknowledged by the coordinator. This percentage refers to the total number of data frames that MAC layers in the device attempts to transmit.</p>
</list-item>
<list-item><p>Channel access failures: percentage of dropped frames by MAC layers in the device because the CSMA/CA algorithm has failed due to the maximum number of backoffs (<italic>macMaxCSMABackoffs</italic>
) being exceeded. This percentage refers to the total number of data frames that MAC layers in the device attempts to transmit.</p>
</list-item>
<list-item><p>Frame transmission failures: percentage of dropped frames by MAC layer in device because the CSMA/CA algorithm has failed due to the maximum number of frame transmission retries (<italic>macMaxFrameRetries</italic>
) being exceeded. This percentage refers to the total number of data frames that MAC layers in the device attempts to transmit.</p>
</list-item>
<list-item><p>Collisions: percentage of transmitted data frames for which no acknowledgment frame has been received, due to transmission failure. According to simulation conditions, the only reason that can cause a frame transmission failure is a collision. This percentage refers to the total number of data frames transmitted by MAC layers in the device.</p>
</list-item>
</list>
</p>
<p><xref ref-type="table" rid="sensors-16-00216-t003">Table 3</xref>
shows that the percentage of successfully transmitted frames decreases as both network load and the number of devices increase, which demonstrates the results of message loss rate shown in <xref ref-type="fig" rid="sensors-16-00216-f009">Figure 9</xref>
. Values shown in <xref ref-type="table" rid="sensors-16-00216-t003">Table 3</xref>
point out that in the absence of hidden nodes, all failures in the CSMA/CA algorithm are recorded in the column “Channel access failures”, due to the <italic>macMaxCSMABackoffs</italic>
limit being exceeded. The number of frame retransmissions caused by collisions is not high enough to cause the CSMA/CA algorithm to fail due to the maximum limit of retransmissions (<italic>macMaxFrameRetries</italic>
) being exceeded.</p>
<fig id="sensors-16-00216-f009" position="float"><label>Figure 9</label>
<caption><p>Message loss rate as a function of network load, without hidden nodes.</p>
</caption>
<graphic xlink:href="sensors-16-00216-g009"></graphic>
</fig>
<table-wrap id="sensors-16-00216-t003" position="float"><object-id pub-id-type="pii">sensors-16-00216-t003_Table 3</object-id>
<label>Table 3</label>
<caption><p>Carrier sense multiple access with collision avoidance (CSMA/CA) statistics with no hidden nodes.</p>
</caption>
<table frame="hsides" rules="groups"><thead><tr><th align="center" valign="middle" style="border-top:solid thin" rowspan="1" colspan="1">N</th>
<th align="center" valign="middle" style="border-top:solid thin" rowspan="1" colspan="1"></th>
<th align="center" valign="middle" style="border-top:solid thin" rowspan="1" colspan="1">Successfully</th>
<th align="center" valign="middle" style="border-top:solid thin" rowspan="1" colspan="1"></th>
<th align="center" valign="middle" style="border-top:solid thin" rowspan="1" colspan="1">Frame</th>
<th align="center" valign="middle" style="border-top:solid thin" rowspan="1" colspan="1"></th>
</tr>
<tr><th align="center" valign="middle" rowspan="1" colspan="1">(Number of</th>
<th align="center" valign="middle" rowspan="1" colspan="1">Network</th>
<th align="center" valign="middle" rowspan="1" colspan="1">Transmitted</th>
<th align="center" valign="middle" rowspan="1" colspan="1">Channel Access</th>
<th align="center" valign="middle" rowspan="1" colspan="1">Transmission</th>
<th align="center" valign="middle" rowspan="1" colspan="1">Collisions</th>
</tr>
<tr><th align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1">Devices)</th>
<th align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1">Load</th>
<th align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1">Frames</th>
<th align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1">Failures</th>
<th align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1">Failures</th>
<th align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1"></th>
</tr>
</thead>
<tbody><tr><td align="center" valign="middle" rowspan="1" colspan="1"></td>
<td align="center" valign="middle" rowspan="1" colspan="1"><bold>10%</bold>
</td>
<td align="center" valign="middle" rowspan="1" colspan="1">93.2%</td>
<td align="center" valign="middle" rowspan="1" colspan="1">6.8%</td>
<td align="center" valign="middle" rowspan="1" colspan="1">0%</td>
<td align="center" valign="middle" rowspan="1" colspan="1">0.5%</td>
</tr>
<tr><td align="center" valign="middle" rowspan="1" colspan="1">4</td>
<td align="center" valign="middle" rowspan="1" colspan="1"><bold>50%</bold>
</td>
<td align="center" valign="middle" rowspan="1" colspan="1">71.8%</td>
<td align="center" valign="middle" rowspan="1" colspan="1">28.2%</td>
<td align="center" valign="middle" rowspan="1" colspan="1">0%</td>
<td align="center" valign="middle" rowspan="1" colspan="1">2.9%</td>
</tr>
<tr><td align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1"></td>
<td align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1"><bold>200%</bold>
</td>
<td align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1">38.2%</td>
<td align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1">61.8%</td>
<td align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1">0%</td>
<td align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1">11.0%</td>
</tr>
<tr><td align="center" valign="middle" rowspan="1" colspan="1"></td>
<td align="center" valign="middle" rowspan="1" colspan="1"><bold>10%</bold>
</td>
<td align="center" valign="middle" rowspan="1" colspan="1">91.1%</td>
<td align="center" valign="middle" rowspan="1" colspan="1">8.9%</td>
<td align="center" valign="middle" rowspan="1" colspan="1">0%</td>
<td align="center" valign="middle" rowspan="1" colspan="1">0.8%</td>
</tr>
<tr><td align="center" valign="middle" rowspan="1" colspan="1">16</td>
<td align="center" valign="middle" rowspan="1" colspan="1"><bold>50%</bold>
</td>
<td align="center" valign="middle" rowspan="1" colspan="1">67.4%</td>
<td align="center" valign="middle" rowspan="1" colspan="1">32.6%</td>
<td align="center" valign="middle" rowspan="1" colspan="1">0%</td>
<td align="center" valign="middle" rowspan="1" colspan="1">3.8%</td>
</tr>
<tr><td align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1"></td>
<td align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1"><bold>200%</bold>
</td>
<td align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1">32.8%</td>
<td align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1">67.2%</td>
<td align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1">0%</td>
<td align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1">14.2%</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>Values shown in <xref ref-type="table" rid="sensors-16-00216-t003">Table 3</xref>
—as well as results obtained from the rest of network loads and scenarios—show that the percentage of collisions increases with both network load and the number of devices in the network. Nevertheless, collision rates with no hidden nodes stays at relatively low values, below 15% in all cases. In conclusion, when there are not hidden nodes in the network, the main cause of channel access failures is due to the transmission medium being sensed as busy when CCA function is called in the CSMA/CA algorithm.</p>
</sec>
<sec id="sec5dot3dot3-sensors-16-00216"><title>5.3.3. Energy Consumption</title>
<p>Energy consumption results have been calculated from average current consumption by transceivers in devices during the entire simulation time. Due to present unavailability of VLC transceiver consumption specification data, simulations have been carried out with consumption values corresponding to the IRMT6452 [<xref rid="B40-sensors-16-00216" ref-type="bibr">40</xref>
] optical infrared transceiver. This transceiver conforms to the specifications defined by the Infrared Standar Associated [<xref rid="B41-sensors-16-00216" ref-type="bibr">41</xref>
] and combines an LED, a photodiode and associated circuitry. Absolute values for energy consumption obtained this way should be reasonably representative of real consumption experienced in a VLC network. Nevertheless, according to the objectives of this paper, energy consumption comparisons can be made depending on whether or not there are hidden nodes in the network.</p>
<p><xref ref-type="fig" rid="sensors-16-00216-f010">Figure 10</xref>
shows average values of accumulated current consumption by transceivers in each device during simulation time. Energy consumption in each device is higher in scenarios with fewer devices because network load is evenly distributed among all network devices. Thus, with a given load value, the number of transmissions performed by each device is higher in scenarios with fewer devices. <xref ref-type="fig" rid="sensors-16-00216-f010">Figure 10</xref>
also shows that energy consumption increases with network load, but not linearly with it. As indicated before, in the absence of hidden nodes, the time spent by devices doing backoffs and calling the CCA function increases with network load. In these states, the transceiver consumption is lower than in the transmission state.</p>
<fig id="sensors-16-00216-f010" position="float"><label>Figure 10</label>
<caption><p>Average current consumption per device, without hidden nodes.</p>
</caption>
<graphic xlink:href="sensors-16-00216-g010"></graphic>
</fig>
</sec>
</sec>
<sec id="sec5dot4-sensors-16-00216"><title>5.4. Performance of Uplink Communications with Hidden Nodes</title>
<p>This section presents simulation results obtained by using the optical channel model based on directed LOS link configuration. Directed LOS link configuration results in the occurrence of hidden nodes in the network, due to the directivity of transceivers and limited optical transmission power of mobile devices (30 mW). It was found that, in all simulation scenarios, devices can only communicate with the coordinator. None of the devices in the network can detect the transmissions of any other device. Hence, in VLC networks with star topology employing directed LOS link configuration, all devices are hidden nodes to each other.</p>
<sec id="sec5dot4dot1-sensors-16-00216"><title>5.4.1. Goodput and Message Loss Rate</title>
<p><xref ref-type="fig" rid="sensors-16-00216-f011">Figure 11</xref>
shows goodput results as a function of network load. The maximum goodput does not reach 20% of the transmission rate in any of the scenarios, which is well below the maximum goodput achieved when there are not hidden nodes in the network (between 65% and 72%). Furthermore, <xref ref-type="fig" rid="sensors-16-00216-f011">Figure 11</xref>
shows how the goodput drops abruptly when network load is higher than 30%, because of the increasing number of collisions.</p>
<p>Goodput results are validated with message loss ratio values presented in <xref ref-type="fig" rid="sensors-16-00216-f012">Figure 12</xref>
. This Figure shows a rapid increase in message loss ratio with network load, compared to the results obtained when there are no hidden nodes in the network. Comparing the graphs of goodput in <xref ref-type="fig" rid="sensors-16-00216-f011">Figure 11</xref>
and message loss rate in <xref ref-type="fig" rid="sensors-16-00216-f012">Figure 12</xref>
, it can be seen that goodput is practically zero and message loss rate is almost 100% for network load values greater than 150%.</p>
<fig id="sensors-16-00216-f011" position="float"><label>Figure 11</label>
<caption><p>Goodput as a function of network load, with hidden nodes.</p>
</caption>
<graphic xlink:href="sensors-16-00216-g011"></graphic>
</fig>
<fig id="sensors-16-00216-f012" position="float"><label>Figure 12</label>
<caption><p>Packet loss rate, with hidden nodes.</p>
</caption>
<graphic xlink:href="sensors-16-00216-g012"></graphic>
</fig>
</sec>
<sec id="sec5dot4dot2-sensors-16-00216"><title>5.4.2. CSMA/CA statistics</title>
<p><xref ref-type="table" rid="sensors-16-00216-t004">Table 4</xref>
shows the results of the CSMA/CA statistics obtained with hidden nodes. As with the case with the statistics obtained when there are not hidden nodes, the percentage of successfully transmitted frames decreases as the load and the number of nodes in the network increase. However, in the presence of hidden nodes, the decrease in the percentage of successfully transmitted frames is much more pronounced, becoming virtually 0% with a 200% network load on all scenarios. The sharp decrease of successfully transmitted frames is caused by the rapid increase in the number of collisions, whose percentage turns out to be above 90% with network loads higher than 50%.</p>
<p>Due to the high percentage of collisions produced with hidden nodes, the whole failures produced in the CSMA/CA algorithm are accounted in the column “Frame transmission failures”, produced when the maximum retransmission number (<italic>macMaxFrameRetries</italic>
) is exceeded. This makes a lot of difference with the statistics obtained without hidden nodes, in which all CSMA/CA failures are accounted in the column “Channel access failures”, produced when the limit of <italic>macMaxCSMABackoffs</italic>
is exceeded.</p>
<table-wrap id="sensors-16-00216-t004" position="float"><object-id pub-id-type="pii">sensors-16-00216-t004_Table 4</object-id>
<label>Table 4</label>
<caption><p>CSMA/CA statistics, with hidden nodes.</p>
</caption>
<table frame="hsides" rules="groups"><thead><tr><th align="center" valign="middle" style="border-top:solid thin" rowspan="1" colspan="1">N</th>
<th align="center" valign="middle" style="border-top:solid thin" rowspan="1" colspan="1"></th>
<th align="center" valign="middle" style="border-top:solid thin" rowspan="1" colspan="1">Successfully</th>
<th align="center" valign="middle" style="border-top:solid thin" rowspan="1" colspan="1"></th>
<th align="center" valign="middle" style="border-top:solid thin" rowspan="1" colspan="1">Frame</th>
<th align="center" valign="middle" style="border-top:solid thin" rowspan="1" colspan="1"></th>
</tr>
<tr><th align="center" valign="middle" rowspan="1" colspan="1">(Number of</th>
<th align="center" valign="middle" rowspan="1" colspan="1">Network</th>
<th align="center" valign="middle" rowspan="1" colspan="1">Transmitted</th>
<th align="center" valign="middle" rowspan="1" colspan="1">Channel Access</th>
<th align="center" valign="middle" rowspan="1" colspan="1">Transmission</th>
<th align="center" valign="middle" rowspan="1" colspan="1">Collisions</th>
</tr>
<tr><th align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1">Devices)</th>
<th align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1">Load</th>
<th align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1">Frames</th>
<th align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1">Failures</th>
<th align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1">Failures</th>
<th align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1"></th>
</tr>
</thead>
<tbody><tr><td align="center" valign="middle" rowspan="1" colspan="1"></td>
<td align="center" valign="middle" rowspan="1" colspan="1"><bold>10%</bold>
</td>
<td align="center" valign="middle" rowspan="1" colspan="1">85.9%</td>
<td align="center" valign="middle" rowspan="1" colspan="1">0%</td>
<td align="center" valign="middle" rowspan="1" colspan="1">14.1%</td>
<td align="center" valign="middle" rowspan="1" colspan="1">41%</td>
</tr>
<tr><td align="center" valign="middle" rowspan="1" colspan="1">4</td>
<td align="center" valign="middle" rowspan="1" colspan="1"><bold>50%</bold>
</td>
<td align="center" valign="middle" rowspan="1" colspan="1">28.61%</td>
<td align="center" valign="middle" rowspan="1" colspan="1">0.03%</td>
<td align="center" valign="middle" rowspan="1" colspan="1">71.36%</td>
<td align="center" valign="middle" rowspan="1" colspan="1">91.2%</td>
</tr>
<tr><td align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1"></td>
<td align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1"><bold>200%</bold>
</td>
<td align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1">0.1%</td>
<td align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1">0%</td>
<td align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1">99.9%</td>
<td align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1">99.9%</td>
</tr>
<tr><td align="center" valign="middle" rowspan="1" colspan="1"></td>
<td align="center" valign="middle" rowspan="1" colspan="1"><bold>10%</bold>
</td>
<td align="center" valign="middle" rowspan="1" colspan="1">82%</td>
<td align="center" valign="middle" rowspan="1" colspan="1">0%</td>
<td align="center" valign="middle" rowspan="1" colspan="1">18%</td>
<td align="center" valign="middle" rowspan="1" colspan="1">48.2%</td>
</tr>
<tr><td align="center" valign="middle" rowspan="1" colspan="1">16</td>
<td align="center" valign="middle" rowspan="1" colspan="1"><bold>50%</bold>
</td>
<td align="center" valign="middle" rowspan="1" colspan="1">22.73%</td>
<td align="center" valign="middle" rowspan="1" colspan="1">0.02%</td>
<td align="center" valign="middle" rowspan="1" colspan="1">77.25%</td>
<td align="center" valign="middle" rowspan="1" colspan="1">93.3%</td>
</tr>
<tr><td align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1"></td>
<td align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1"><bold>200%</bold>
</td>
<td align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1">0.02%</td>
<td align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1">0%</td>
<td align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1">99.98%</td>
<td align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1">99.9%</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
<sec id="sec5dot4dot3-sensors-16-00216"><title>5.4.3. Energy Consumption</title>
<p><xref ref-type="fig" rid="sensors-16-00216-f013">Figure 13</xref>
shows the average current consumption by transceiver in each device during simulation time. Compared to consumption obtained without hidden nodes in the network, consumption values with hidden nodes remain far superior in almost all load values and all of the scenarios. The largest increase in current consumption with hidden nodes is due to the increase in the number of frames’ retransmissions because of the collisions produced.</p>
<fig id="sensors-16-00216-f013" position="float"><label>Figure 13</label>
<caption><p>Average current consumption per device, with hidden nodes.</p>
</caption>
<graphic xlink:href="sensors-16-00216-g013"></graphic>
</fig>
<p>Differences between current consumption obtained in the absence and presence of hidden nodes are more obvious when using, as a metric, the values for total consumed current per MAC payload byte transferred on the network; that is, the current drawn by all devices which is needed to successfully receive an application message byte in the coordinator. <xref ref-type="table" rid="sensors-16-00216-t005">Table 5</xref>
shows results of current consumption per payload byte, for scenarios of four and 16 devices and load values of 50%, 100% and 200%. Values in <xref ref-type="table" rid="sensors-16-00216-t005">Table 5</xref>
show an increasing consumption per byte in both scenarios as network load increases, both in the absence and presence of hidden nodes. However, with hidden nodes and network loads greater than 100%, current consumption per payload byte reaches values of magnitude higher than values obtained without hidden nodes. With hidden nodes in the network, the increase in the number of collisions with transmission load has a double effect in current consumption per payload byte. On one hand, current consumption is significantly increased, as <xref ref-type="fig" rid="sensors-16-00216-f013">Figure 13</xref>
shows. On the other hand, the number of received messages in coordinator is drastically reduced, as shown in message loss ratio values displayed in <xref ref-type="fig" rid="sensors-16-00216-f012">Figure 12</xref>
.</p>
<table-wrap id="sensors-16-00216-t005" position="float"><object-id pub-id-type="pii">sensors-16-00216-t005_Table 5</object-id>
<label>Table 5</label>
<caption><p>Comparison of current consumption per payload byte.</p>
</caption>
<table frame="hsides" rules="groups"><thead><tr><th align="center" valign="middle" style="border-top:solid thin" rowspan="1" colspan="1">N</th>
<th align="center" valign="middle" style="border-top:solid thin" rowspan="1" colspan="1"></th>
<th align="center" valign="middle" style="border-top:solid thin" rowspan="1" colspan="1">Current Consumption</th>
<th align="center" valign="middle" style="border-top:solid thin" rowspan="1" colspan="1">Current Consumption</th>
</tr>
<tr><th align="center" valign="middle" rowspan="1" colspan="1">(Number of</th>
<th align="center" valign="middle" rowspan="1" colspan="1">Network Load</th>
<th align="center" valign="middle" rowspan="1" colspan="1">with no Hidden Nodes</th>
<th align="center" valign="middle" rowspan="1" colspan="1">with Hidden Nodes</th>
</tr>
<tr><th align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1">Devices)</th>
<th align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1"></th>
<th align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1">(mA/byte)</th>
<th align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1">(mA/byte)</th>
</tr>
</thead>
<tbody><tr><td align="center" valign="middle" rowspan="1" colspan="1"></td>
<td align="center" valign="middle" rowspan="1" colspan="1"><bold>50%</bold>
</td>
<td align="center" valign="middle" rowspan="1" colspan="1"><inline-formula><mml:math id="mm55"><mml:mrow><mml:mn>1</mml:mn>
<mml:mo>.</mml:mo>
<mml:mn>89</mml:mn>
<mml:mo>×</mml:mo>
<mml:msup><mml:mn>10</mml:mn>
<mml:mrow><mml:mo>−</mml:mo>
<mml:mn>7</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center" valign="middle" rowspan="1" colspan="1"><inline-formula><mml:math id="mm56"><mml:mrow><mml:mn>2</mml:mn>
<mml:mo>.</mml:mo>
<mml:mn>08</mml:mn>
<mml:mo>×</mml:mo>
<mml:msup><mml:mn>10</mml:mn>
<mml:mrow><mml:mo>−</mml:mo>
<mml:mn>6</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
</tr>
<tr><td align="center" valign="middle" rowspan="1" colspan="1">4</td>
<td align="center" valign="middle" rowspan="1" colspan="1"><bold>100%</bold>
</td>
<td align="center" valign="middle" rowspan="1" colspan="1"><inline-formula><mml:math id="mm57"><mml:mrow><mml:mn>1</mml:mn>
<mml:mo>.</mml:mo>
<mml:mn>96</mml:mn>
<mml:mo>×</mml:mo>
<mml:msup><mml:mn>10</mml:mn>
<mml:mrow><mml:mo>−</mml:mo>
<mml:mn>7</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center" valign="middle" rowspan="1" colspan="1"><inline-formula><mml:math id="mm58"><mml:mrow><mml:mn>2</mml:mn>
<mml:mo>.</mml:mo>
<mml:mn>51</mml:mn>
<mml:mo>×</mml:mo>
<mml:msup><mml:mn>10</mml:mn>
<mml:mrow><mml:mo>−</mml:mo>
<mml:mn>5</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
</tr>
<tr><td align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1"></td>
<td align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1"><bold>200%</bold>
</td>
<td align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1"><inline-formula><mml:math id="mm59"><mml:mrow><mml:mn>2</mml:mn>
<mml:mo>.</mml:mo>
<mml:mn>09</mml:mn>
<mml:mo>×</mml:mo>
<mml:msup><mml:mn>10</mml:mn>
<mml:mrow><mml:mo>−</mml:mo>
<mml:mn>7</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1"><inline-formula><mml:math id="mm60"><mml:mrow><mml:mn>1</mml:mn>
<mml:mo>.</mml:mo>
<mml:mn>45</mml:mn>
<mml:mo>×</mml:mo>
<mml:msup><mml:mn>10</mml:mn>
<mml:mrow><mml:mo>−</mml:mo>
<mml:mn>3</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
</tr>
<tr><td align="center" valign="middle" rowspan="1" colspan="1"></td>
<td align="center" valign="middle" rowspan="1" colspan="1"><bold>50%</bold>
</td>
<td align="center" valign="middle" rowspan="1" colspan="1"><inline-formula><mml:math id="mm61"><mml:mrow><mml:mn>1</mml:mn>
<mml:mo>.</mml:mo>
<mml:mn>91</mml:mn>
<mml:mo>×</mml:mo>
<mml:msup><mml:mn>10</mml:mn>
<mml:mrow><mml:mo>−</mml:mo>
<mml:mn>7</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center" valign="middle" rowspan="1" colspan="1"><inline-formula><mml:math id="mm62"><mml:mrow><mml:mn>2</mml:mn>
<mml:mo>.</mml:mo>
<mml:mn>76</mml:mn>
<mml:mo>×</mml:mo>
<mml:msup><mml:mn>10</mml:mn>
<mml:mrow><mml:mo>−</mml:mo>
<mml:mn>6</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
</tr>
<tr><td align="center" valign="middle" rowspan="1" colspan="1">16</td>
<td align="center" valign="middle" rowspan="1" colspan="1"><bold>100%</bold>
</td>
<td align="center" valign="middle" rowspan="1" colspan="1"><inline-formula><mml:math id="mm63"><mml:mrow><mml:mn>2</mml:mn>
<mml:mo>.</mml:mo>
<mml:mn>00</mml:mn>
<mml:mo>×</mml:mo>
<mml:msup><mml:mn>10</mml:mn>
<mml:mrow><mml:mo>−</mml:mo>
<mml:mn>7</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center" valign="middle" rowspan="1" colspan="1"><inline-formula><mml:math id="mm64"><mml:mrow><mml:mn>4</mml:mn>
<mml:mo>.</mml:mo>
<mml:mn>27</mml:mn>
<mml:mo>×</mml:mo>
<mml:msup><mml:mn>10</mml:mn>
<mml:mrow><mml:mo>−</mml:mo>
<mml:mn>5</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
</tr>
<tr><td align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1"></td>
<td align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1"><bold>200%</bold>
</td>
<td align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1"><inline-formula><mml:math id="mm65"><mml:mrow><mml:mn>2</mml:mn>
<mml:mo>.</mml:mo>
<mml:mn>19</mml:mn>
<mml:mo>×</mml:mo>
<mml:msup><mml:mn>10</mml:mn>
<mml:mrow><mml:mo>−</mml:mo>
<mml:mn>7</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center" valign="middle" style="border-bottom:solid thin" rowspan="1" colspan="1"><inline-formula><mml:math id="mm66"><mml:mrow><mml:mn>2</mml:mn>
<mml:mo>.</mml:mo>
<mml:mn>62</mml:mn>
<mml:mo>×</mml:mo>
<mml:msup><mml:mn>10</mml:mn>
<mml:mrow><mml:mo>−</mml:mo>
<mml:mn>3</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
</sec>
</sec>
<sec id="sec6-sensors-16-00216"><title>6. Solution Proposal to the Hidden Node Problem</title>
<p>In this section, we present a solution proposal to the hidden node problem appearing in uplink communications made during the CAP of the superframe in the IEEE 802.15.7 standard. The proposed solution is based on the solution presented in [<xref rid="B42-sensors-16-00216" ref-type="bibr">42</xref>
] for networks based on radio frequency using CSMA channel access method, with a central node responsible of managing all transmissions made by the rest of the nodes. According to the model presented in [<xref rid="B42-sensors-16-00216" ref-type="bibr">42</xref>
], the central node starts sending a signaling tone—called <italic>busy tone</italic>
—when it detects a transmission from one of the nodes in the network. The <italic>busy tone</italic>
is received by all nodes in the network, and notifies them that there is an ongoing transmission being made. Results presented by the authors of [<xref rid="B42-sensors-16-00216" ref-type="bibr">42</xref>
] show that their solution performs almost as well as CSMA without hidden terminals. The solution we present in this work is based on a [<xref rid="B42-sensors-16-00216" ref-type="bibr">42</xref>
] model principle, applied to IEEE 802.15.7 networks with star topology. In our proposed solution, the coordinator is responsible for sending a signaling pattern—analogous to the <italic>busy tone</italic>
—to indicate it is receiving a transmission coming from one of the devices in the network.</p>
<sec id="sec6dot1-sensors-16-00216"><title>6.1. Model Description</title>
<p>As described in <xref ref-type="sec" rid="sec3dot2dot1-sensors-16-00216">Section 3.2.1</xref>
, the IEEE 802.15.7 standard indicates that sending an idle pattern is required for the coordinator during idle or receive operation to ensure continuous illumination. The solution we propose is based on selecting the appropriate type of idle pattern sent by the coordinator, depending on whether or not it is receiving transmissions from the devices, as such it is described below:
<list list-type="alpha-lower"><list-item><p>When the coordinator does not receive transmissions from the devices, it sends an out-of-band idle pattern. Thus, devices wishing to make uplink transmissions during CAP detect the channel idle when they invoke the CCA function during CSMA/CA procedure. <xref ref-type="fig" rid="sensors-16-00216-f014">Figure 14</xref>
a shows an example of this situation: coordinator sends an out-of-band idle pattern and devices 1 and 2 detect the channel idle, so they can continue to transmit.</p>
</list-item>
<list-item><p>When the coordinator receives a transmission from one or more devices, it sends an in-band idle pattern. Thus, devices wishing to make uplink transmissions during CAP detect the channel as busy when they invoke the CCA function during CSMA/CA procedure. <xref ref-type="fig" rid="sensors-16-00216-f014">Figure 14</xref>
b shows an example of this situation: coordinator sends an in-band idle pattern when receiving the transmission from device 1, and device 2 detects the channel as busy.</p>
</list-item>
</list>
</p>
<p>Our proposed solution has the advantage of not requiring modifications to the specifications defined in the IEEE 802.15.7 standard for PHY and MAC layers in devices and coordinators. However, according to the results published in some papers, such as [<xref rid="B43-sensors-16-00216" ref-type="bibr">43</xref>
], simultaneous transmission of optical signals on both directions— idle patterns in downlink direction and frames in uplink direction—may produce mutual interference. Therefore, to minimize such interference, it is necessary to configure PHY layers in devices and coordinators in order to employ different wavelength bands for each transmission direction. According to the IEEE802.15.7 standard, the PHY layer allows the selection of wavelength bands by means of the so called Band Plan Ids, which indicate the codes corresponding to the wavelengths containing the spectral peak for the transmitted frames. Band Plan Ids are indicated in the PHY header, and may be used by the receiver for optimizing its performance in order to minimize the interference.</p>
<fig id="sensors-16-00216-f014" position="float"><label>Figure 14</label>
<caption><p>Transmission of out-of-band (<bold>a</bold>
) and in-band (<bold>b</bold>
) idle patterns by the coordinator for signaling transmission activity.</p>
</caption>
<graphic xlink:href="sensors-16-00216-g014"></graphic>
</fig>
</sec>
<sec id="sec6dot2-sensors-16-00216"><title>6.2. Simulation Results</title>
<p>To check the effectiveness of our proposed solution, we performed several simulations by applying it to our four defined scenarios. We employed the directed LOS channel model, maintaining the same simulation conditions we used when evaluating network performance with hidden nodes. Simulation results obtained with our solution are practically identical to those obtained from the simulations performed without hidden nodes in the network, for all scenarios and the whole network load values.</p>
<p>To confirm the validity of our results, <xref ref-type="fig" rid="sensors-16-00216-f015">Figure 15</xref>
shows a comparative for goodput and message loss ratio values obtained from the simulation scenarios with hidden nodes in the network. In the first experiment labeled as (1) none of the devices in the network can detect transmissions of any other devices, therefore collisions are produced. Since no signaling mechanism is used to avoid collisions, maximum goodput does not reach 20%, see <xref ref-type="fig" rid="sensors-16-00216-f015">Figure 15</xref>
a, and message loss rate increases rapidly, see <xref ref-type="fig" rid="sensors-16-00216-f015">Figure 15</xref>
b.</p>
<p>Results of the second experiment labeled as (2) have been obtained by applying our proposed solution. The coordinator sends a signaling pattern when it detects a transmission coming from one of nodes in the network. Thus, the rest of nodes in the network know that the channel is not free. In this case, goodput results are better than the results obtained in experiment (1). In addition, message loss rate is lower. The performance of the VLC network improves when our mechanism is used to avoid the hidden node problem. Results obtained in (2) are similar to those obtained from simulations performed without hidden nodes, see <xref ref-type="fig" rid="sensors-16-00216-f008">Figure 8</xref>
and <xref ref-type="fig" rid="sensors-16-00216-f009">Figure 9</xref>
.</p>
<fig id="sensors-16-00216-f015" position="float"><label>Figure 15</label>
<caption><p>Comparative the Goodput (<bold>a</bold>
) and the Message loss rate (<bold>b</bold>
) among the simulation scenarios labeled as (1) when a signaling pattern is used to indicate that a device is transmitting and the scenarios labeled as (2) when a signaling pattern is not used. The results shown are for the scenarios with four and 16 devices.</p>
</caption>
<graphic xlink:href="sensors-16-00216-g015"></graphic>
</fig>
</sec>
</sec>
<sec id="sec7-sensors-16-00216"><title>7. Conclusions</title>
<p>Since it was published in 2011, the IEEE 802.15.7 standard has become one of the most important initiatives to normalize and deploy the use of VLC in WPAN. Though the implantation of IEEE 802.15.7 based networks must face several technical challenges, among which are the difficulties in uplink transmissions (from devices to coordinators), including limitations in mobile device transmission power imposed by LED power consumption, and mobility restrictions caused by the necessity of keeping a proper orientation in devices.</p>
<p>Additionally, uplink transmissions made by means of the CSMA/CA method in the IEEE 802.15.7 standard are affected by the hidden node problem, whose effects have been evaluated and analyzed in this research work. We have evaluated the hidden node problem by simulating a star network employing the directed LOS channel model. Under these conditions, we verified that all devices are hidden nodes in all of our modeled scenarios, since none of the devices are capable of detecting the signal transmitted by the rest of them. Our simulation results make evident a severe degradation in network performance produced as a consequence of the hidden node problem. Performance degradation is proven by obtained values for the analyzed metrics, like end-to-end goodput, message loss ratio, percentage of collisions, and energy consumption.</p>
<p>Actual performance degradation may depend on specific characteristics of optical transmitters and receivers used in devices. The use of less directive transmitters and receivers could partially mitigate the effects of the hidden node problem in networks employing a diffuse link configuration. In any case, limitations in optical signal coverage—due to restrictions in transmission power in devices—demand not ignoring the effects of the hidden node problem, regardless of the link configuration employed.</p>
<p>In conclusion, the hidden node problem has to be included as one of the difficulties to be solved in uplink transmissions made by using the CSMA/CA method in IEEE 802.15.7 networks. Therefore, as part of this research work, we elaborated on a solution proposal to the hidden node problem, which has the advantage of not requiring modifications in the specifications defined in the standard for PHY and MAC layers in devices and coordinators.</p>
<p>Our proposed solution is based on the use of the idle patterns sent by the coordinator, during idle or receive operation. Appropriate selection of idle pattern type—in-band or out-of-band—sent by the coordinator can indicate if it is receiving transmissions from devices in the network. Simulation results obtained with our solution demonstrate its high degree of effectiveness, since it allows obtaining identical performance values to those obtained from the simulations performed without hidden nodes in the network.</p>
</sec>
</body>
<back><ack><title>Acknowledgments</title>
<p>This research is supported by the Research Program of University of Las Palmas de Gran Canaria (ULPGC2013-15).</p>
</ack>
<notes><title>Author Contributions</title>
<p>Carlos Ley-Bosch and Itziar Alonso-González have developed the simulation model, organized the simulations, performed the data analysis and wrote the manuscript. David Sánchez-Rodríguez and Carlos Ramírez-Casañas have supervised the work. All authors have read, revised, and approved the final manuscript.</p>
</notes>
<notes><title>Conflicts of Interest</title>
<p>The authors declare no conflict of interest.</p>
</notes>
<ref-list><title>References</title>
<ref id="B1-sensors-16-00216"><label>1.</label>
<element-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Jovicic</surname>
<given-names>A.</given-names>
</name>
<name><surname>Li</surname>
<given-names>J.</given-names>
</name>
<name><surname>Richardson</surname>
<given-names>T.</given-names>
</name>
</person-group>
<article-title>Visible light communication: Opportunities, challenges and the path to market</article-title>
<source>IEEE Commun. Mag.</source>
<year>2013</year>
<volume>51</volume>
<fpage>26</fpage>
<lpage>32</lpage>
<pub-id pub-id-type="doi">10.1109/MCOM.2013.6685754</pub-id>
</element-citation>
</ref>
<ref id="B2-sensors-16-00216"><label>2.</label>
<element-citation publication-type="confproc"><person-group person-group-type="author"><name><surname>Zhou</surname>
<given-names>J.</given-names>
</name>
<name><surname>Yan</surname>
<given-names>W.</given-names>
</name>
</person-group>
<article-title>Experimental investigation on the performance characteristics of white LEDs used in illumination application</article-title>
<source>Proceedings of the IEEE Power Electronics Specialists Conference</source>
<conf-loc>Orlando, FL, USA</conf-loc>
<conf-date>17–21 June 2007</conf-date>
<fpage>1436</fpage>
<lpage>1440</lpage>
</element-citation>
</ref>
<ref id="B3-sensors-16-00216"><label>3.</label>
<element-citation publication-type="webpage"><person-group person-group-type="author"><collab>IEEE</collab>
</person-group>
<article-title>IEEE Standard for Local and Metropolitan Area Networks, Part 15.7: Short-Range Wireless Optical Communication using Visible Light</article-title>
<comment>Available online: <ext-link ext-link-type="uri" xlink:href="http://ieeexplore.ieee.org/servlet/opac?punumber=6016193">http://ieeexplore.ieee.org/servlet/opac?punumber=6016193</ext-link>
</comment>
<date-in-citation>(accessed on 2 February 2016)</date-in-citation>
</element-citation>
</ref>
<ref id="B4-sensors-16-00216"><label>4.</label>
<element-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Chen</surname>
<given-names>K.</given-names>
</name>
</person-group>
<article-title>Medium access control of wireless LANs for mobile computing</article-title>
<source>IEEE Netw.</source>
<year>1994</year>
<volume>8</volume>
<fpage>50</fpage>
<lpage>63</lpage>
<pub-id pub-id-type="doi">10.1109/65.313014</pub-id>
</element-citation>
</ref>
<ref id="B5-sensors-16-00216"><label>5.</label>
<element-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Jang</surname>
<given-names>B.</given-names>
</name>
<name><surname>Sichitiu</surname>
<given-names>M.</given-names>
</name>
</person-group>
<article-title>IEEE 802.11 Saturation Throughput Analysis in the Presence of Hidden Terminals</article-title>
<source>IEEE/ACM Trans. Netw.</source>
<year>2012</year>
<volume>20</volume>
<fpage>557</fpage>
<lpage>570</lpage>
<pub-id pub-id-type="doi">10.1109/TNET.2011.2165322</pub-id>
</element-citation>
</ref>
<ref id="B6-sensors-16-00216"><label>6.</label>
<element-citation publication-type="confproc"><person-group person-group-type="author"><name><surname>Wijetunge</surname>
<given-names>S.</given-names>
</name>
<name><surname>Gunawardana</surname>
<given-names>U.</given-names>
</name>
<name><surname>Liyanapathirana</surname>
<given-names>R.</given-names>
</name>
</person-group>
<article-title>Throughput analysis of IEEE 802.15.4 MAC protocol in the presence of hidden nodes</article-title>
<source>Proceedings of the 11th International Symposium on Communications and Information Technologies</source>
<conf-loc>Hangzhou, China</conf-loc>
<conf-date>12–14 October 2011</conf-date>
<fpage>303</fpage>
<lpage>308</lpage>
</element-citation>
</ref>
<ref id="B7-sensors-16-00216"><label>7.</label>
<element-citation publication-type="confproc"><person-group person-group-type="author"><name><surname>Hwang</surname>
<given-names>L.</given-names>
</name>
<name><surname>Sep</surname>
<given-names>S.</given-names>
</name>
<name><surname>Shih</surname>
<given-names>Y.</given-names>
</name>
<name><surname>Cheng</surname>
<given-names>Y.</given-names>
</name>
</person-group>
<article-title>Grouping strategy for solving hidden node problem in IEEE 802.15.4 LR-WPAN</article-title>
<source>Proceedings of the First International Conference on Wireless Internet</source>
<conf-loc>Budapest, Hungary</conf-loc>
<conf-date>10–14 July 2005</conf-date>
<fpage>26</fpage>
<lpage>32</lpage>
</element-citation>
</ref>
<ref id="B8-sensors-16-00216"><label>8.</label>
<element-citation publication-type="confproc"><person-group person-group-type="author"><name><surname>Kwon</surname>
<given-names>C.</given-names>
</name>
<name><surname>Tek</surname>
<given-names>R.</given-names>
</name>
<name><surname>Kim</surname>
<given-names>K.</given-names>
</name>
<name><surname>Yoo</surname>
<given-names>S.</given-names>
</name>
</person-group>
<article-title>Dynamic Group Allocation Scheme for avoiding hidden node problem in IEEE 802.15.4</article-title>
<source>Proceedings of the 9th International Symposium on Communications and Information Technology</source>
<conf-loc>Icheon, South Korea</conf-loc>
<conf-date>28–30 September 2009</conf-date>
<fpage>637</fpage>
<lpage>638</lpage>
</element-citation>
</ref>
<ref id="B9-sensors-16-00216"><label>9.</label>
<element-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Sheu</surname>
<given-names>S.</given-names>
</name>
<name><surname>Shih</surname>
<given-names>Y.</given-names>
</name>
<name><surname>Lee</surname>
<given-names>W.</given-names>
</name>
</person-group>
<article-title>CSMA/CF Protocol for IEEE 802.15.4 WPANs</article-title>
<source>IEEE Trans. Veh. Technol.</source>
<year>2009</year>
<volume>58</volume>
<fpage>1501</fpage>
<lpage>1516</lpage>
<pub-id pub-id-type="doi">10.1109/TVT.2008.928634</pub-id>
</element-citation>
</ref>
<ref id="B10-sensors-16-00216"><label>10.</label>
<element-citation publication-type="confproc"><person-group person-group-type="author"><name><surname>Adere</surname>
<given-names>K.</given-names>
</name>
<name><surname>Murthy</surname>
<given-names>G.R.</given-names>
</name>
</person-group>
<article-title>Solving the hidden and exposed terminal problems using directional-antenna based MAC protocol for wireless sensor networks</article-title>
<source>Proceedings of the 2010 Seventh International Conference on Wireless And Optical Communications Networks (WOCN)</source>
<conf-loc>Colombo, Sri Lanka</conf-loc>
<conf-date>6–8 September 2010</conf-date>
<fpage>1</fpage>
<lpage>5</lpage>
</element-citation>
</ref>
<ref id="B11-sensors-16-00216"><label>11.</label>
<element-citation publication-type="confproc"><person-group person-group-type="author"><name><surname>Musa</surname>
<given-names>A.</given-names>
</name>
<name><surname>Baba</surname>
<given-names>M.</given-names>
</name>
<name><surname>Mansor</surname>
<given-names>H.</given-names>
</name>
</person-group>
<article-title>Performance analysis of the IEEE 802.15.7 CSMA/CA algorithm based on discrete time Markov chain (DTMC)</article-title>
<source>Proceedings of the IEEE Malaysia International Conference on Communications</source>
<conf-loc>Kuala Lumpur, Malaysia</conf-loc>
<conf-date>26–28 November 2013</conf-date>
<fpage>385</fpage>
<lpage>389</lpage>
</element-citation>
</ref>
<ref id="B12-sensors-16-00216"><label>12.</label>
<element-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Nobar</surname>
<given-names>S.</given-names>
</name>
<name><surname>Mehr</surname>
<given-names>K.</given-names>
</name>
<name><surname>Niya</surname>
<given-names>J.</given-names>
</name>
</person-group>
<article-title>Comprehensive performance analysis of IEEE 802.15.7 CSMA/CA mechanism for saturated traffic</article-title>
<source>IEEE/OSA J. Opt. Commun. Netw.</source>
<year>2015</year>
<volume>7</volume>
<fpage>62</fpage>
<lpage>73</lpage>
<pub-id pub-id-type="doi">10.1364/JOCN.7.000062</pub-id>
</element-citation>
</ref>
<ref id="B13-sensors-16-00216"><label>13.</label>
<element-citation publication-type="confproc"><person-group person-group-type="author"><name><surname>Hwang</surname>
<given-names>J.</given-names>
</name>
<name><surname>Do</surname>
<given-names>T.</given-names>
</name>
<name><surname>Yoo</surname>
<given-names>M.</given-names>
</name>
</person-group>
<article-title>Performance analysis on MAC protocol based on beacon-enabled visible personal area networks</article-title>
<source>Proceedings of the Fifth International Conference on Ubiquitous and Future Networks</source>
<conf-loc>Da Nang, Vietnam</conf-loc>
<conf-date>2–5 July 2013</conf-date>
<fpage>384</fpage>
<lpage>388</lpage>
</element-citation>
</ref>
<ref id="B14-sensors-16-00216"><label>14.</label>
<element-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Kahn</surname>
<given-names>J.M.</given-names>
</name>
<name><surname>Barry</surname>
<given-names>J.R.</given-names>
</name>
</person-group>
<article-title>Wireless Infrared Communications</article-title>
<source>Proc. IEEE</source>
<year>1997</year>
<volume>85</volume>
<fpage>265</fpage>
<lpage>298</lpage>
<pub-id pub-id-type="doi">10.1109/5.554222</pub-id>
</element-citation>
</ref>
<ref id="B15-sensors-16-00216"><label>15.</label>
<element-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Grobe</surname>
<given-names>L.</given-names>
</name>
<name><surname>Paraskevopoulos</surname>
<given-names>A.</given-names>
</name>
<name><surname>Hilt</surname>
<given-names>J.</given-names>
</name>
<name><surname>Schulz</surname>
<given-names>D.</given-names>
</name>
</person-group>
<article-title>High-speed visible light communication systems</article-title>
<source>IEEE Commun. Mag.</source>
<year>2013</year>
<volume>51</volume>
<fpage>60</fpage>
<lpage>66</lpage>
<pub-id pub-id-type="doi">10.1109/MCOM.2013.6685758</pub-id>
</element-citation>
</ref>
<ref id="B16-sensors-16-00216"><label>16.</label>
<element-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Kahn</surname>
<given-names>J.M.</given-names>
</name>
<name><surname>Krause</surname>
<given-names>W.J.</given-names>
</name>
<name><surname>Carruthers</surname>
<given-names>J.B.</given-names>
</name>
</person-group>
<article-title>Experimental characterization of nondirected indoor infrared channels</article-title>
<source>IEEE Trans. Commun.</source>
<year>1995</year>
<volume>43</volume>
<fpage>1613</fpage>
<lpage>1623</lpage>
<pub-id pub-id-type="doi">10.1109/26.380210</pub-id>
</element-citation>
</ref>
<ref id="B17-sensors-16-00216"><label>17.</label>
<element-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Lopez-Hernandez</surname>
<given-names>F.J.</given-names>
</name>
<name><surname>Betancor</surname>
<given-names>M.J.</given-names>
</name>
</person-group>
<article-title>DUSTIN: A novel algorithm for the calculation of the impulse response on IR wireless indoor channels</article-title>
<source>IEEE Electron. Lett.</source>
<year>1997</year>
<volume>33</volume>
<fpage>1804</fpage>
<lpage>1806</lpage>
<pub-id pub-id-type="doi">10.1049/el:19971224</pub-id>
</element-citation>
</ref>
<ref id="B18-sensors-16-00216"><label>18.</label>
<element-citation publication-type="journal"><person-group person-group-type="author"><name><surname>González</surname>
<given-names>O.</given-names>
</name>
<name><surname>Rodríguez</surname>
<given-names>S.</given-names>
</name>
<name><surname>Pérez-Jiménez</surname>
<given-names>R.</given-names>
</name>
<name><surname>Mendoza</surname>
<given-names>B.R.</given-names>
</name>
<name><surname>Ayala</surname>
<given-names>A.</given-names>
</name>
</person-group>
<article-title>Error Analysis of the Simulated Impulse Response on Indoor Wireless Optical Channels Using a Monte Carlo-Based Ray-Tracing Algorithm</article-title>
<source>IEEE Trans. Commun.</source>
<year>2005</year>
<volume>53</volume>
<fpage>124</fpage>
<lpage>130</lpage>
<pub-id pub-id-type="doi">10.1109/TCOMM.2004.840625</pub-id>
</element-citation>
</ref>
<ref id="B19-sensors-16-00216"><label>19.</label>
<element-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Lee</surname>
<given-names>K.</given-names>
</name>
<name><surname>Park</surname>
<given-names>H.</given-names>
</name>
<name><surname>Barry</surname>
<given-names>J.R.</given-names>
</name>
</person-group>
<article-title>Indoor Channel Characteristics for Visible Light Communications</article-title>
<source>IEEE Commun. Lett.</source>
<year>2011</year>
<volume>15</volume>
<fpage>217</fpage>
<lpage>219</lpage>
<pub-id pub-id-type="doi">10.1109/LCOMM.2011.010411.101945</pub-id>
</element-citation>
</ref>
<ref id="B20-sensors-16-00216"><label>20.</label>
<element-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Komine</surname>
<given-names>T.</given-names>
</name>
<name><surname>Nakagawa</surname>
<given-names>M.</given-names>
</name>
</person-group>
<article-title>Fundamental analysis for visible-light communication system using LED lights</article-title>
<source>IEEE Trans. Consumer Electron.</source>
<year>2004</year>
<volume>50</volume>
<fpage>100</fpage>
<lpage>107</lpage>
<pub-id pub-id-type="doi">10.1109/TCE.2004.1277847</pub-id>
</element-citation>
</ref>
<ref id="B21-sensors-16-00216"><label>21.</label>
<element-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Chvojka</surname>
<given-names>P.</given-names>
</name>
<name><surname>Zvanovec</surname>
<given-names>S.</given-names>
</name>
<name><surname>Haigh</surname>
<given-names>P.A.</given-names>
</name>
<name><surname>Ghassemlooy</surname>
<given-names>Z.</given-names>
</name>
</person-group>
<article-title>Channel Characteristics of Visible Light Communications Within Dynamic Indoor Environment</article-title>
<source>J. Lightwave Technol.</source>
<year>2015</year>
<volume>33</volume>
<fpage>1719</fpage>
<lpage>1725</lpage>
<pub-id pub-id-type="doi">10.1109/JLT.2015.2398894</pub-id>
</element-citation>
</ref>
<ref id="B22-sensors-16-00216"><label>22.</label>
<element-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Ding</surname>
<given-names>J.</given-names>
</name>
<name><surname>Xu</surname>
<given-names>Z.</given-names>
</name>
<name><surname>Hanzo</surname>
<given-names>L.</given-names>
</name>
</person-group>
<article-title>Accuracy of the Point-Source Model of a Multi-LED Array in High-Speed Visible Light Communication Channel Characterization</article-title>
<source>IEEE Photonics J.</source>
<year>2015</year>
<volume>7</volume>
<pub-id pub-id-type="doi">10.1109/JPHOT.2015.2450534</pub-id>
</element-citation>
</ref>
<ref id="B23-sensors-16-00216"><label>23.</label>
<element-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Zhang</surname>
<given-names>T.</given-names>
</name>
<name><surname>Guo</surname>
<given-names>S.</given-names>
</name>
<name><surname>Chen</surname>
<given-names>H.</given-names>
</name>
<name><surname>Zhong</surname>
<given-names>F.</given-names>
</name>
</person-group>
<article-title>Enhancing the bit error rate of indoor visible light communication ystems using adaptive channel estimation algorithm</article-title>
<source>IET Commun.</source>
<year>2015</year>
<volume>9</volume>
<fpage>501</fpage>
<lpage>507</lpage>
<pub-id pub-id-type="doi">10.1049/iet-com.2014.0649</pub-id>
</element-citation>
</ref>
<ref id="B24-sensors-16-00216"><label>24.</label>
<element-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Shoreh</surname>
<given-names>M.</given-names>
</name>
<name><surname>Fallahpour</surname>
<given-names>A.</given-names>
</name>
<name><surname>Salehi</surname>
<given-names>J.</given-names>
</name>
</person-group>
<article-title>Design concepts and performance analysis of multicarrier CDMA for indoor visible light communications</article-title>
<source>IEEE/OSA J. Opt. Commun. Netw.</source>
<year>2015</year>
<volume>7</volume>
<fpage>554</fpage>
<lpage>562</lpage>
<pub-id pub-id-type="doi">10.1364/JOCN.7.000554</pub-id>
</element-citation>
</ref>
<ref id="B25-sensors-16-00216"><label>25.</label>
<element-citation publication-type="confproc"><person-group person-group-type="author"><name><surname>Biswal</surname>
<given-names>S.</given-names>
</name>
<name><surname>Prince</surname>
<given-names>S.</given-names>
</name>
</person-group>
<article-title>Improvement of BER in LED based indoor communication using overlapping pulse position modulation and LDPC coding</article-title>
<source>Proceedings of the International Conference on Communications and Signal Processing</source>
<conf-loc>Melmaruvathur, India</conf-loc>
<conf-date>3–5 April 2013</conf-date>
<fpage>34</fpage>
<lpage>38</lpage>
</element-citation>
</ref>
<ref id="B26-sensors-16-00216"><label>26.</label>
<element-citation publication-type="confproc"><person-group person-group-type="author"><name><surname>Sindhubala</surname>
<given-names>K.</given-names>
</name>
<name><surname>Vijayalakshmi</surname>
<given-names>B.</given-names>
</name>
</person-group>
<article-title>Design and performance analysis of visible light communication system through simulation</article-title>
<source>Proceedings of the 2015 International Conference on Computing and Communications Technologies (ICCCT)</source>
<conf-loc>Chennai, India</conf-loc>
<conf-date>26–27 February 2015</conf-date>
<fpage>215</fpage>
<lpage>220</lpage>
</element-citation>
</ref>
<ref id="B27-sensors-16-00216"><label>27.</label>
<element-citation publication-type="webpage"><person-group person-group-type="author"><collab>IEEE</collab>
</person-group>
<article-title>IEEE Standard for Information Technology—Telecommunications and Information Exchange Between Systems-Local and Metropolitan Area Networks-Specific Requirements-Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications</article-title>
<comment>Available online: <ext-link ext-link-type="uri" xlink:href="http://ieeexplore.ieee.org/servlet/opac?punumber=5258">http://ieeexplore.ieee.org/servlet/opac?punumber=5258</ext-link>
</comment>
<date-in-citation>(accessed on 2 February 2016)</date-in-citation>
</element-citation>
</ref>
<ref id="B28-sensors-16-00216"><label>28.</label>
<element-citation publication-type="webpage"><person-group person-group-type="author"><collab>IEEE</collab>
</person-group>
<article-title>IEEE Standard for Information technology—Telecommunications and information exchange between systems—Local and metropolitan area networks—Specific requirements-Part 15.4: Wireless Medium Access Control (MAC) and Physical Layer (PHY) Specifications for Low-Rate Wireless Personal Area Networks (WPANs)</article-title>
<comment>Available online: <ext-link ext-link-type="uri" xlink:href="http://ieeexplore.ieee.org/servlet/opac?punumber=4152702">http://ieeexplore.ieee.org/servlet/opac?punumber=4152702</ext-link>
</comment>
<date-in-citation>(accessed on 2 February 2016)</date-in-citation>
</element-citation>
</ref>
<ref id="B29-sensors-16-00216"><label>29.</label>
<element-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Yang</surname>
<given-names>J.</given-names>
</name>
<name><surname>Kwon</surname>
<given-names>J.</given-names>
</name>
<name><surname>SPNG</surname>
<given-names>D.</given-names>
</name>
</person-group>
<article-title>Goodput analysis of a WLAN with hidden nodes under a non-saturated condition</article-title>
<source>IEEE Trans. Wireless Commun.</source>
<year>2009</year>
<volume>8</volume>
<fpage>2259</fpage>
<lpage>2264</lpage>
<pub-id pub-id-type="doi">10.1109/TWC.2009.080632</pub-id>
</element-citation>
</ref>
<ref id="B30-sensors-16-00216"><label>30.</label>
<element-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Ekici</surname>
<given-names>O.</given-names>
</name>
<name><surname>Yongacoglu</surname>
<given-names>A.</given-names>
</name>
</person-group>
<article-title>IEEE 802.11a Throughput Performance with Hidden Nodes</article-title>
<source>IEEE Commun. Lett.</source>
<year>2008</year>
<volume>12</volume>
<fpage>465</fpage>
<lpage>467</lpage>
<pub-id pub-id-type="doi">10.1109/LCOMM.2008.080209</pub-id>
</element-citation>
</ref>
<ref id="B31-sensors-16-00216"><label>31.</label>
<element-citation publication-type="confproc"><person-group person-group-type="author"><name><surname>Harthikote-Matha</surname>
<given-names>M.</given-names>
</name>
<name><surname>Banka</surname>
<given-names>T.</given-names>
</name>
<name><surname>Jayasumana</surname>
<given-names>A.</given-names>
</name>
</person-group>
<article-title>Performance Degradation of IEEE 802.15.4 Slotted CSMA/CA due to Hidden Nodes</article-title>
<source>Proceedings of the IEEE 32nd Conference on Local Computer Networks</source>
<conf-loc>Dublin, Ireland</conf-loc>
<conf-date>15–18 October 2007</conf-date>
<fpage>264</fpage>
<lpage>266</lpage>
</element-citation>
</ref>
<ref id="B32-sensors-16-00216"><label>32.</label>
<element-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Le</surname>
<given-names>N.T.</given-names>
</name>
<name><surname>Uddin</surname>
<given-names>M.S.</given-names>
</name>
<name><surname>Choi</surname>
<given-names>S.</given-names>
</name>
<name><surname>Jang</surname>
<given-names>Y.M.</given-names>
</name>
</person-group>
<article-title>Key Issues for Visible Light WPANs</article-title>
<source>OSIA Standards & Technol. Rev. J.</source>
<year>2010</year>
<volume>23</volume>
<fpage>43</fpage>
<lpage>56</lpage>
</element-citation>
</ref>
<ref id="B33-sensors-16-00216"><label>33.</label>
<element-citation publication-type="webpage"><person-group person-group-type="author"><name><surname>Jang</surname>
<given-names>Y.</given-names>
</name>
<name><surname>Le</surname>
<given-names>N.</given-names>
</name>
<name><surname>Uddin</surname>
<given-names>M.</given-names>
</name>
<name><surname>Chowdhury</surname>
<given-names>M.</given-names>
</name>
<name><surname>Choi</surname>
<given-names>S.</given-names>
</name>
<name><surname>Cha</surname>
<given-names>J.</given-names>
</name>
<name><surname>Kim</surname>
<given-names>J.</given-names>
</name>
<name><surname>Lee</surname>
<given-names>K.</given-names>
</name>
</person-group>
<article-title>Some Considerations for Draft VLC Specification</article-title>
<comment>Available online: <ext-link ext-link-type="uri" xlink:href="https://mentor.ieee.org/802.15/dcn/15-10-0590-00-0007-some-considerations-for-draft-vlc.pptx">https://mentor.ieee.org/802.15/dcn/15-10-0590-00-0007-some-considerations-for-draft-vlc.pptx</ext-link>
</comment>
<date-in-citation>(accessed on 16 December 2015)</date-in-citation>
</element-citation>
</ref>
<ref id="B34-sensors-16-00216"><label>34.</label>
<element-citation publication-type="confproc"><person-group person-group-type="author"><name><surname>Singh</surname>
<given-names>R.</given-names>
</name>
<name><surname>O’Farrell</surname>
<given-names>T.</given-names>
</name>
<name><surname>David</surname>
<given-names>J.</given-names>
</name>
</person-group>
<article-title>Performance evaluation of IEEE 802.15.7 CSK physical layer</article-title>
<source>Proceedings of the IEEE Globecom Workshops</source>
<conf-loc>Atlanta, GA, USA</conf-loc>
<conf-date>9 December 2013</conf-date>
<fpage>1064</fpage>
<lpage>1069</lpage>
</element-citation>
</ref>
<ref id="B35-sensors-16-00216"><label>35.</label>
<element-citation publication-type="webpage"><article-title>OMNeT++ Discrete Event Simulator</article-title>
<comment>Available online: <ext-link ext-link-type="uri" xlink:href="https://omnetpp.org">https://omnetpp.org</ext-link>
</comment>
<date-in-citation>(accessed on 20 April 2015)</date-in-citation>
</element-citation>
</ref>
<ref id="B36-sensors-16-00216"><label>36.</label>
<element-citation publication-type="confproc"><person-group person-group-type="author"><name><surname>Chen</surname>
<given-names>F.</given-names>
</name>
<name><surname>Wang</surname>
<given-names>N.</given-names>
</name>
<name><surname>German</surname>
<given-names>R.</given-names>
</name>
<name><surname>Dressler</surname>
<given-names>F.</given-names>
</name>
</person-group>
<article-title>Performance Evaluation of IEEE 802.15.4 LR-WPAN for Industrial Applications</article-title>
<source>Proceedings of the Fifth Annual Conference on Wireless on Demand Network Systems and Services</source>
<conf-loc>Garmisch-Partenkirchen, Germany</conf-loc>
<conf-date>23–25 January 2008</conf-date>
<fpage>89</fpage>
<lpage>96</lpage>
</element-citation>
</ref>
<ref id="B37-sensors-16-00216"><label>37.</label>
<element-citation publication-type="confproc"><person-group person-group-type="author"><name><surname>Deqiang</surname>
<given-names>D.</given-names>
</name>
<name><surname>Xizheng</surname>
<given-names>K.</given-names>
</name>
<name><surname>Linpeng</surname>
<given-names>X.</given-names>
</name>
</person-group>
<article-title>An Optimal Lights Layout Scheme for Visible-Light Communication System</article-title>
<source>Proceedings of the 8th International Conference on Electronic Measurement and Instruments</source>
<conf-loc>Xi’an, China</conf-loc>
<conf-date>18 July–16 August 2007</conf-date>
<pub-id pub-id-type="doi">10.1109/ICEMI.2007.4350650</pub-id>
</element-citation>
</ref>
<ref id="B38-sensors-16-00216"><label>38.</label>
<element-citation publication-type="confproc"><person-group person-group-type="author"><name><surname>Komine</surname>
<given-names>T.</given-names>
</name>
<name><surname>Haruyama</surname>
<given-names>S.</given-names>
</name>
<name><surname>Nakagawa</surname>
<given-names>M.</given-names>
</name>
</person-group>
<article-title>Bi-directional visible-light communication using corner cube modulator</article-title>
<source>Proceedings of the Wireless and Optical Communication</source>
<conf-loc>Banff, AB, Canada</conf-loc>
<conf-date>14–16 July 2003</conf-date>
</element-citation>
</ref>
<ref id="B39-sensors-16-00216"><label>39.</label>
<element-citation publication-type="confproc"><person-group person-group-type="author"><name><surname>Tronghop</surname>
<given-names>D.</given-names>
</name>
<name><surname>Hwang</surname>
<given-names>J.</given-names>
</name>
<name><surname>Jung</surname>
<given-names>S.</given-names>
</name>
<name><surname>Shin</surname>
<given-names>Y.</given-names>
</name>
<name><surname>Yoo</surname>
<given-names>M.</given-names>
</name>
</person-group>
<article-title>Modeling and analysis of the wireless channel formed by LED angle in visible light communication</article-title>
<source>Proceedings of the International Conference on Information Networking</source>
<conf-loc>Bali, Indonesia</conf-loc>
<conf-date>1–3 February 2012</conf-date>
<fpage>354</fpage>
<lpage>357</lpage>
</element-citation>
</ref>
<ref id="B40-sensors-16-00216"><label>40.</label>
<element-citation publication-type="webpage"><article-title>Vishay</article-title>
<comment>Available online: <ext-link ext-link-type="uri" xlink:href="https://www.vishay.com">https://www.vishay.com</ext-link>
</comment>
<date-in-citation>(accessed on 18 January 2016)</date-in-citation>
</element-citation>
</ref>
<ref id="B41-sensors-16-00216"><label>41.</label>
<element-citation publication-type="webpage"><article-title>Infrared Data Association</article-title>
<comment>Available online: <ext-link ext-link-type="uri" xlink:href="https://www.irda.org">https://www.irda.org</ext-link>
</comment>
<date-in-citation>(accessed on 18 January 2016)</date-in-citation>
</element-citation>
</ref>
<ref id="B42-sensors-16-00216"><label>42.</label>
<element-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Tobagi</surname>
<given-names>F.</given-names>
</name>
<name><surname>Kleinrock</surname>
<given-names>L.</given-names>
</name>
</person-group>
<article-title>Packet Switching in Radio Channels: Part II—The Hidden Terminal Problem in Carrier Sense Multiple-Access and the Busy-Tone Solution</article-title>
<source>IEEE Trans. Commun.</source>
<year>1975</year>
<volume>23</volume>
<fpage>1417</fpage>
<lpage>1433</lpage>
<pub-id pub-id-type="doi">10.1109/TCOM.1975.1092767</pub-id>
</element-citation>
</ref>
<ref id="B43-sensors-16-00216"><label>43.</label>
<element-citation publication-type="confproc"><person-group person-group-type="author"><name><surname>Lin</surname>
<given-names>K.</given-names>
</name>
<name><surname>Hirohashi</surname>
<given-names>K.</given-names>
</name>
</person-group>
<article-title>High-Speed Full-Duplex Multiaccess System for Led-based Wireless Communications Using Visible Light</article-title>
<source>Proceedings of the International Symposium on Optical Engineering and Photonic Technology</source>
<conf-loc>Orlando, FL, USA</conf-loc>
<conf-date>10–13 July 2009</conf-date>
<fpage>1</fpage>
<lpage>5</lpage>
</element-citation>
</ref>
</ref-list>
</back>
</pmc>
</record>
Pour manipuler ce document sous Unix (Dilib)
EXPLOR_STEP=$WICRI_ROOT/Ticri/CIDE/explor/TelematiV1/Data/Pmc/Corpus
HfdSelect -h $EXPLOR_STEP/biblio.hfd -nk 000079 | SxmlIndent | more
Ou
HfdSelect -h $EXPLOR_AREA/Data/Pmc/Corpus/biblio.hfd -nk 000079 | SxmlIndent | more
Pour mettre un lien sur cette page dans le réseau Wicri
{{Explor lien |wiki= Ticri/CIDE |area= TelematiV1 |flux= Pmc |étape= Corpus |type= RBID |clé= PMC:4801592 |texte= Evaluation of the Effects of Hidden Node Problems in IEEE 802.15.7 Uplink Performance }}
Pour générer des pages wiki
HfdIndexSelect -h $EXPLOR_AREA/Data/Pmc/Corpus/RBID.i -Sk "pubmed:26861352" \ | HfdSelect -Kh $EXPLOR_AREA/Data/Pmc/Corpus/biblio.hfd \ | NlmPubMed2Wicri -a TelematiV1
![]() | This area was generated with Dilib version V0.6.31. | ![]() |