Printing data to Arduino's serial port and then reading it through Python gives the user the freedom to investigate the data further, and take advantage of the advanced processing tools of a computer, rather than a micro controller. I found Python's pySerial method a while ago, and I wanted to share its capabilities with makers and engineers that may be having the same issues that I was encountering. This tutorial was created to demonstrate that the Arduino is capable of acting as an independent data logger, separate from wireless methods and SD cards. The slow loop is a result of the plotting, so once you comment out all of the plot code, you will get a much higher data rate and. I actually used 0.8 seconds as the time between data records and it appeared to catch all data points. I found that my loop took roughly half a second to complete, which means that my serial port should not be outputting more than 2 points per second. This will prevent lost bytes and dropouts of data. Do some tests to verify the speed of your loop. I found that I was missing bytes or they were getting backed up in the queue in the buffer. Therefore, I advise anyone who is using the method below to assess whether you are reading all the bytes that are being outputted by the Arduino. I found that updating the plot occupied a lot of processing time, which resulted in slower reading of the serial port. NOTES: while I was using Raspberry Pi, I came across an issue between reading the serial port, saving to.
0 Comments
Leave a Reply. |