I'm planning a new project that will have 3 or 4 Arduino working stand alone and one Arduino like a data logger asking some informations to these Arduino.
The main idea is the data logger be removable.I could attach and detach the data logger on the network. When connected, the data logger "ask" each arduino a set of information.
I understand that these "stand alone" are the slaves and the data logger is the master. Is it correct?
What the better protocol to apply on this project?
You may have good reason to have so many Arduinos so close together, but there is no evidence yet that you could not do this with one. Even if you do have multiple Arduinos, it is probably simpler to have one of them collecting and recording the data from the others on a continuous basis, thereby requiring the portable device to only ask once. This portable device need not be an Arduino. An Arduino would merely be an intermediary device, a phone would probably do a better job, and a laptop certainly would.
I understand that these "stand alone" are the slaves and the data logger is the master. Is it correct?
Not necessarily. A master merely initiates communication. After that, it doesn't matter which is which.
Unless you need to log multiple packets per second, speed doesn't doesn't merit much thought.
Nick_Pyner:
You may have good reason to have so many Arduinos so close together
Part of the project is management some tanks each one do the same task, but the processes can run using one tank or 10. To keep the project scalable I'm planning using one arduino for each tank ... if the production expand I only "clone" this controller and it works stand alone.
If I have 4 tanks in one place connected in one network and In other place I have other 3 tanks sharing other network, I will need collect data 2 times only instead 7 times (each arduino).
Nick_Pyner:
This portable device need not be an Arduino. An Arduino would merely be an intermediary device, a phone would probably do a better job, and a laptop certainly would
You are right! One laptop do this job perfectly, but I'm going back to the world of microcontrollers now and have not caught big challenges with arduinos yet. So using an arduino as data coelctor is also a chance to study its architecture.
Nick_Pyner:
Not necessarily. A master merely initiates communication. After that, it doesn't matter which is which. Unless you need to log multiple packets per second, speed doesn't doesn't merit much thought.
felipeksw:
Part of the project is management some tanks each one do the same task, but the processes can run using one tank or 10. To keep the project scalable I'm planning using one arduino for each tank ... if the production expand I only "clone" this controller and it works stand alone.
If I have 4 tanks in one place connected in one network and In other place I have other 3 tanks sharing other network, I will need collect data 2 times only instead 7 times (each arduino).
This is incomprehensible, but there is no point in quibbling, particularly as I haven't the faintest idea of what you are measuring, just so long as you are aware that the distances aren't that great and one Arduino can handle a swag of sensors.
So using an arduino as data coelctor is also a chance to study its architecture.
Again I wouldn't want to get pedantic, but you will get all the study of architecture you will want with the other Arduinos. They are all collecting data. The exercise is how you get from the Arduino world to the outside world so that you can do something with it.
felipeksw:
I'm planning a new project that will have 3 or 4 Arduino working stand alone and one Arduino like a data logger asking some informations to these Arduino.
If the slaves are active all the time, even when the master is not present, (so they can always be listening) then you could communicate between the master and the slaves using nRF24L01+ wireless transceivers.
When the master is switched on (or brought within range) it can poll each slave in turn to get data. There is an example of a master and 2 slaves in this Simple nRF24L01+ Tutorial and it could easily be extended to several slaves.
felipeksw:
What the better protocol to apply on this project?
use wemos/NodeMcu instead of the arduinos, and let push each "station" the data to a master using simple HTTP.
This little devices are coming for the same costs like arduinos, have lot more RAM and CPU speed and if needed, they can even be programmed Over The Air (OTA).