Академический Документы
Профессиональный Документы
Культура Документы
To design a wireless data transmission system that uses the visible light spectrum to send and
receive data in form of text only.
Project Idea:
This project uses a set of LED’s to transfer data in form of bits. The LED’s operate on two states
0(OFF) and 1(ON). The sender types in the message in form of plain text in the console. A code
then processes the text and converts it into bits. Various combinations of these LED's are used
to transmit these bits forming the Transmission Block.
The light signals from these LED’s are picked up by Light Dependent Resistors (LDR’s). The
readings from the LDR’s go to another Arduino© and are processed by a code that converts
these light signals into plain text as intended. The LDR circuit forms the Reception Block.
Except for an uninterfered line of sight (LOS), the Transmission and Reception blocks are
connected in no way whatsoever.
Character Map:
Software Requirement:
Transmission Side:
int incomingByte=0;
void setup()
{
pinMode(13, OUTPUT);
pinMode(12, OUTPUT);
pinMode(8, OUTPUT);
pinMode(7, OUTPUT);
pinMode(4, OUTPUT);
Serial.begin(9600);
}
void loop()
{
digitalWrite(4, LOW);
digitalWrite(7, LOW);
digitalWrite(8, LOW);
digitalWrite(12, LOW);
digitalWrite(13, LOW);
if(Serial.available()>0)
{
incomingByte=Serial.read();
Serial.print((char)incomingByte);
if(incomingByte==65)
{
digitalWrite(4, LOW);
digitalWrite(7, LOW);
digitalWrite(8, LOW);
digitalWrite(12, LOW);
digitalWrite(13, HIGH);
delay(1500);
}
else if(incomingByte==66)
{
digitalWrite(4, LOW);
digitalWrite(7, LOW);
digitalWrite(8, LOW);
void setup(){
Serial.begin(9600);
}
void loop(){
int LDRReading1 = analogRead(LDR_Pin);
int LDRReading2 = analogRead(LDR1_Pin);
int LDRReading3 = analogRead(LDR2_Pin);
int LDRReading4 = analogRead(LDR3_Pin);
int LDRReading5 = analogRead(LDR4_Pin);
int val1,val2,val3,val4,val5,fval;
String f="";
if(LDRReading1<=10)
val1=0;
else
val1=1;
if(LDRReading2<=10)
val2=0;
else
val2=1;
if(LDRReading3<=10)
val3=0;
else
val3=1;
if(LDRReading4<=10)
val4=0;
else
val4=1;
if(LDRReading5<=10)
val5=0;
else
val5=1;
Limitations:
1. While sending the next data sequence a problem arises which leads to the glowing of
the present sequence, so an escape character is required after every sequence to
transmit the next data sequence.
2. For a very long sequence the system goes out of synchronization which can be
overcome by introducing a delay in the system. But at the same time a large delay
causes the system to slow down.
3. As visible light is an integral part of our daily livelihood, avoiding it is almost impossible.
This external visible light acts as a noise for the system. The system is very much prone
to interference and this can be a serious problem in abruptly lit surroundings.
Application:
Wireless technology is the main aim of our project of transmitting data using Arduino as the
main component. The RF band being a very congested band, transmitting data sometimes
happens to be problematic due to traffic. So instead of that we thought of using the visible
spectrum (390-700nm) range which is not much used for wireless communication
technologies.