What you had learned about Arduino into a project, the Arduino Networked Lamp. Part of the fun was to combine some of the simple exercises into a practical project. You also learned about the Processing language and how to use it to create a proxy on your computer to do things that would be difficult or impossible with your Arduino.
Along the way you’ll learn more about electronics, communication, and programming, and we’ll give some attention to construction techniques.
The goal of this project is to automatically turn the water on and off at the right time each day, except if it’s raining.
NOTE
If you don’t have a garden, you can still have some fun with this project. If you just have a small houseplant you want to water, try building this with only one valve. If you need to dispense a tasty beverage of your choice at 5 p.m. each day, consider using a food-grade pump instead of the water valve. For example, Adafruit sells a Peristaltic Liquid Pump with Silicone Tubing.
As a professor, I teach many students to build things. Along the way it occurred to me that students sometimes think that I instantly know exactly how to build a project. In fact, designing a project is an extremely iterative process.
To create a project, start with an idea, and rough out little pieces of it; as you go, this sometimes requires making changes to the initial idea. We often have to take a detour to learn how a new electronic part works, or to figure out a programming concept we’ve not encountered before, or remind ourselves how to use a feature of Arduino we’ve not used in a long time or is new to us. Sometimes we have to turn to our textbooks, the Internet, or ask someone for advice. We review many examples, tutorials, and projects that contain bits related to what we are doing. We take bits and pieces from different places and combine them, perhaps very roughly at first, like Frankenstein’s monster, to see how things will work together.
As the project progresses from concept to rough design to testing parts of the hardware and software, we keep having to go back and make changes in something we did earlier, so that everything will work together properly. We don’t know a single engineer who starts with a blank piece of paper, designs a whole project from start to finish, which then works exactly as planned, without ever having to go back and change anything.
All of the preceding is true for hardware as well as software.
The point here is that even if you are a beginner, you are ready to design projects. Start with what you know, and slowly add features, one new idea or part at a time. Don’t be afraid to explore intriguing ideas that have no immediate use.
Whenever I hear of an electronic part or programming concept or trick that seems interesting, I try it out, even if I don’t have a use for it right away. This knowledge then becomes another tool in my toolkit. If you get stuck or don’t know something, remember that even professional engineers have to learn new things all the time.
Thanks to the wide and generous Arduino community, you have many resources via the Internet, and unless you are a hermit on a mountain top you can probably find a local Arduino meetup, club, makerspace, hackerspace, or even individual who can help. For some hints on how to make the best use of online resources.
So, in addition to teaching you more about electronics, programming, and construction, I’m going to show you a bit about the design process. You’ll see that some of the simplistic circuits or sketches will get modified again and again until we arrive at the final project.
Leave a Reply