Is my project doable with Python and Arduino?


I want to creat a program that controls components of a machine, as well as is autonomous . For ex: To monitor pH, the program will record pH over time and if he pH goes below 7.4 than the program will cause X part of the machine to open. A program that can record data from multiple sites (pH sensor, Oxygen sensor...), and act on its own based on the data coming in over time. I would also like to be able to make 2D and 3D graphs out of the data collection. This project is connecting programming with hardware stuff.

Thanks, sorry about the poor description, but its the best. As you may tell, this is the first time I try this.

What specific programming language for Arduino is best? Where can I get these sensors? Any books to help me learn?


Arduinos are programmed using C/C++. The Arduino system simplifies the setting up of programs by doing some of the housekeeping behind the scenes.

There is lots of tutorial material on the Arduino and other websites. Learning by doing is also easy as the Arduino IDE comes with a large number of example programs (the Arduino system calls them sketches). I don't have any advice about books but I have seen several in bookshops.

One very important piece of advice for a newcomer is to deal with your project as a series of small parts. Get each concept working on its own before trying to join them all together. The parts might be - read data from Sensor A; read data from Sensor B; control external device C; receive data from the PC; send data to the PC etc.

Python is perfectly suitable for PC programming. In fact most PC languages can easily interface with the Arduino. I believe (without personal experience) that a language called Processing has a lot of easy to use graphing abilities.

You will need to wait for someone else to advise about sensors. Google "Arduino ph sensor" etc may help.