Greetings, i just started on a project that needs to use an ADS1115 16bit ADC in order to sample in the max rate possible (800hz) and pass it over the I2C interface to the arduino which will use a GPS module to synchronise the samples with the world time. Do we have any other project for reference and guidance? Or do we have any advice where to start from? Thank you!
Sounds possible, but before forum members spend much time helping you with this, please explain what the project is about and why the sample rate needs to be 800Hz, what will happen to the data etc.
Hello and thank you taking the time replying to me. I don't know much about the bigger project to be honest because it is distributed to a lot of different students. It is a university project if that was not clear. The main idea is that two devices (the final prototypes) will run in different locations around the globe to gather some data (thats the part that i am not clear about). The problem that my part is trying to solve is a) [this is the easy part] the RTC that is used in the project is not accurate and loses about +-150s every week so you can guess that in the actual running time of the deployment (which will be for about 6-7 months) so we have to use a GPS module to retrieve time from it and correct the RTC time every hour or so and b) we have to sample through the ADS1115 in the highest rate possible (which actually is 816 samples/s but we can settle for 800 samples/s) 16bit because the method that they use in the current devices produce a a lot of noise in the data collected. And then pass the samples through I2C to the Arduino and save the data in some way to the PC.
That is as much as i know really. I' ve just been put on this project and i am trying to gather as much info as possible and do my best.
So will the pc be present and connected for the whole 6-7 months?
If so, is the Arduino needed? Could the pc connect direct to the ads115? Could the audio input on the pc be used instead of the ads?
If there is no pc present for the 6-7 months, will the Arduino need to run on batteries? You will probably need a 32GB SD card to record all that data, and they use a lot of power!
I'm also concerned that keeping up with that data rate from the sensor and reading the time from a GPS module could be tricky. Maybe choose an Arduino with an available hardware serial port for the GPS instead of relying on software serial.
There are various Arduino-compatible boards that are made for data logging, some have built-in SD card slots.
The RTC you mentioned sounds atrocious! There are considerably better ones available. But I guess if you need 2 devices to remain synchronised to the millisecond over 7 months, GPS is a good idea.
I don't know if the PC will be present the whole time. I thing they will use an SD card just like you said but this is not in my assignment. Maybe somebody else is figuring this out. For my development i will take for granted that the PC will be present. My code must save the data in the PC.
Then I would say the Arduino is redundant.
It seems to me that you and your fellow students each working in isolation on small parts of the overall project, at this early stage, is not likely to produce a successful design. I think you need to work more as a team to understand the requirements and then come up with some candidate designs (some of which may not include an Arduino at all), and evaluate them before agreeing on an approach, or perhaps making a shortlist and knocking up a few quick prototypes before settling on a design.
I totally get what you are saying. But it is not in my power to take those decisions. This is a bigger project coordinated by a professor who just gave basic instructions and requirements. I am required to use Arduino with ADS1115 take advantage of the 16bits and 800+ sampling rate as well as use the GPS module to retrieve and correct the RTC time. It is what it is really..
It is in your power to raise your concerns about the approach being taken? That's something that would be expected of you in industry (probably an interview question about that!).
Well, here is a link to a library for using the ads1115. You should read and understand the instructions. One of the example sketches may be a good starting point.
Take note of the part about using an interrupt to detect when the next value is ready to read. Choose an ads1115 board that will let you do that. Also choose the highest i²c speed your Arduino is capable of. Most ordinary Arduino can use the 400KHz speed by using Wire.setClock(400000UL);
Have you been told what model of arduino to use or have you been allowed that choice? I would recommend first trying a Pro Micro (don't confuse with Pro Mini) because it has an available hardware UART (serial) to connect your GPS module to.
What model of GPS will you use?
First of all thank you so much for making the effort helping me. Now in the case of which model of Arduino to use is up to me, so that's something i guess! I'll definitely start with the library documentation and proceed from there. The GPS module i have to work with is GPS6MV2 which is a basic one that does the job.
This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.