I am starting on a big project for which I want to build a prototype first. As I see here on the forums people prefer to get some information about the project to better judge a question, so that is what I will do first. But feel free to scroll directly down to the questions!
The prototype will consist of an ordering system, which will be controlled through a touchscreen hooked up to a raspberry pi. Once the order has been placed/paid it will be send from the raspberry pi to a set of arduinos which will control around 20 stepper motors that will prepare the order (the number of motors will increase in the real product if we decide to start producing it). The stepper motors will rotate the belt, cut the bread and other ingredients, place them at exactly the right moment etc. The end result would be a fully prepared meal.
Since I want to hookup an screen, I think it is best to use a raspberry pi for that since it has an integrated hdmi output. For the part of connecting the raspberry pi to arduinos is done to make sure our workload on the raspberry pi will not become to heavy. I was wondering if this is the best method to connect multiple arduinos to a pi or that there are faster/cheaper ways? (Link: https://www.instructables.com/id/Combine-1-or-more-Arduinos-with-a-RaspberryPi/ ). I believe the normal way for connecting enslaving arduinos to a raspberry pi would be using serial communication but if read this correct on the internet this doesn’t work for multiple arduinos.
In addition, the motors will only make 180 degree turns in one direction so are stepper motors best suited for this kind of motion? To be even more precise I would like to make the 180 degree rotation in around 0.1 second and then wait 0.4 seconds and repeat this over and over.
As you might tell I am not that experienced with electrical engineering so I just don’t know what is the best solution. That brings me to the next question how many motors can I run roughly on one arduino with the motion described above. I could hook up many arduinos which each will control few motors or have fewer arduinos with port expanders (MCP23017) and stepper drivers (drv 8825) to reduce the number of GPIO pins required per stepper and allowing to use more motors per arduino?