I’m back! I’ve actually been working on stuff, I promise. While some progress has been made on the finger typing project, I’m going to save that for another post and do this one about the pneumatic controller.
For those unfamiliar, the pneumatic controller project is something that I’ve been working on for a while. Briefly: I programmed a pneumatic cycle tester while working at UL, but due to the age of the system, decided that redesigning the electronics around a microcontroller would be a good idea. Until recently, I’ve only been able to work on the theoretical: designing the electronic layout, writing the code, making a BOM (bill of materials), and, more recently, making a user interface in Python to make using the system easier.
Well I’m now very happy to say that we are officially moving forward with the project.
This is by far the largest electronic/coding project I’ve worked on by myself. It involves several aspects I’ve never worked with before, such as LCDs, keypads, solenoids, and much longer code. While I think (and hope) that the project will be a success to the extent that I planned, I think that it will at least be better than it is now.
Here’s what’s happened so far:
Day 1 I bought the Arduino so I would be able to start right away and ordered the bulk of the components online. Other than the general program, which would be best to test in sections once the system is built, there were several things I wanted to test individually because they were new for me.
First up was the LCD. Turns out the LCD and keypad from the original Festo system could be detached from the extra electronics and used with the Arduino. This news was somewhat dampened by my breaking the LCD almost immediately. While the LCD was similar to what I would have purchased, the wiring was positioned differently and through an unclear combination of me getting confused by different schematics and the LCD being designed differently than most, it stopped working. It’s possible it never worked. Who knows?
But, up from the ashes grow the roses of success. In this case, success came through me finding out that Adafruit makes a deliciously simple LCD shield for Arduino and the keypad working after a very anticlimactic 10 minutes work. I’ve never used a shield before, but it looked fairly idiot-proof. I put the shield together on Wednesday with only a brief panic at how hot the IC got when I soldered it in, and it worked perfectly. A little more expensive than planned, but about the same as if I had bought both the plain LCD and keypad to begin with. Incidentally, shields fitting perfectly flush to the board and then working correctly is just the best feeling.
Next up were the sensors. I had been hoping I would be able to wire them directly to the Arduino, similar to how you would wire a button, but it turns out the sensors have 3 leads: power, ground, and signal. I tried a couple of methods before speaking to someone at Sparkfun (who have an amazing chat service, by the way) for advice. Eventually, I settled on using a transistor with a separate 24V power source for the sensors, as shown below. This worked great. I had never seen someone use transistors for a high power input before, so it was a neat thing to learn.
Finally, the solenoids. This should have been pretty straightforward (ha!) as it’s just a simple transistor circuit with an added diode, but naturally it was not. After determining that the solenoids needed at least 20V to run (although they could be held with 10V) I tried the circuit and found that while I could activate the solenoid, it would stay put even after the transistor wasn’t powered. I tried various combinations but found that nothing changed and the solenoid would only switch back when the main power was cut. I think this is probably because I was using a different transistor but I won’t know until I can try the real one on Monday. Still, progress.
That’s it for now. I’ve also been making changes and fixes to the code and diagrams. Next time I’ll be able to show you some of the other diagrams and, hopefully, actual pictures! I’m also hoping to update this fairly regularly, since I’ll be working on it at least somewhat every day. Here’s a picture of the new, more exciting, circuit diagram.
No promises for the finger typing, except that it will one day be done and published.
Goodbye for now!