DATA BIT WIDTH OF STEP-SYNCHRONIZATION TYPE COMMUNICATION BY VISIBLE LIGHT IN ARduino

Asked 1 years ago, Updated 1 years ago, 284 views

We implement visible light communication using Arduino, but if we narrow the bit width of the data from 100 msec to 70 msec in step synchronous communication, we cannot receive it correctly.
I'd like to know why.

The stop bit to the next data start bit (data transmission interval) is set to 1000 msec.

Note:
As you pointed out, I will explain the situation in more detail.
The sender sends bits one after another at 100 msec from the start bit, and the receiver reads the signal at 100 msec after checking the start bit. If you narrow the bit interval of 100 msec to 70 msec, you will not be able to receive data correctly, such as missing data. (In other words, it means that the sender narrows the transmission interval between bits, and the receiver narrows the detection interval between bits by the same amount.)

In addition, this visible light communication is implemented in a dark room with no natural light at all.

To briefly describe the specific sketch, for the blinking of visible light sent by the sender, the receiver reads the visible light intensity quantified by the sensor with analogRead(), and if the value exceeds the threshold, it is "1" or "0".Also, when a start bit is received, a bit string is received by performing multiple delays (bit interval times) for each data read, including reading data.

arduino serial-communication

2022-09-30 21:58

2 Answers

Let's first prepare an oscilloscope to see what happens to the waveform on the receiving side.
They say they use visible light, but when you look at the fact that there is no description of what kind of luminescence the sender uses and what kind of sensor the receiver uses, you don't seem to care about the hardware at all.

Instead of making guesses and making guesses, let's build up solid observations.
Otherwise, I don't know what it is, but it only turns out that it didn't work.


2022-09-30 21:58

Depending on the circuit design of the transmitter side, or light emitting side, and the receiver side, or light receiving element itself (phototototransistor, CdS, etc.), the signal shape of the waveform given on the light receiving side is very different (not just deformed).Therefore, I don't think it's strange that a system that can send and receive 100 msec=10bit/sec will fail if it increases speed 70 msec=14bit/sec due to lack of hardware and software.

I want to know why

There are so many causes in so many places that I can't even guess from the current questionnaire.

Therefore, the current question can only be answered as "unestimated." So please gather evidence.There is no way to fix it unless you know where it is moving differently from the designer's intentions.

  • In terms of the transmission program, I think I'm producing a driving waveform like this 本当I really need proof that it's happening
  • The transmitting element must be emitting this kind of light にReally abbreviated below
  • The light receiving element should be emitting a signal like this
  • You should be getting this signal when you input your microcomputer

This will require an oscilloscope, analyzer, or measuring instrument, and the user will need knowledge and experience.

If the hardware side does not touch it, there are many things that can be considered, such as how far the current circuit can go, and whether the current software can understand the behavior of the current circuit and make the best specifications.However, I don't have enough information with the current question.

If you increase the amount of information in the question, you may be able to answer it, but it may not be limited to that, but it may be a complete throw at work.Questions that are too broad are closed in SO.Try to narrow down the scope of your questions and find out where you can answer each question.


2022-09-30 21:58

If you have any answers or tips


© 2024 OneMinuteCode. All rights reserved.