Previous posts for this project:
- [CaTS] ForgetMeNot - Index
- [CaTS] ForgetMeNot - Week 0: Project Description
- [CaTS] ForgetMeNot - Week 1: EnOceanPi and Sensors
- [CaTS] ForgetMeNot - Week 2: Elro CoCo and Pi Cam with OpenHAB
- [CaTS] ForgetMeNot - Week 3: Data persistence and charts with OpenHAB
- [CaTS] ForgetMeNot - Week 4: Arduino-OpenHAB communication
- [CaTS] ForgetMeNot - Week 5: Getting familiar with EAGLE
- [CaTS] ForgetMeNot - Week 6: Getting to know the TBS1052B-EDU oscilloscope
- [CaTS] ForgetMeNot - Week 7: First tests with RPiSoC
- [CaTS] ForgetMeNot - Week 7 (2): More testing with RPiSoC
- [CaTS] ForgetMeNot - Week 8: Water dispenser and temperature
- [CaTS] ForgetMeNot - Week 9: RFID Cat detection and identification
- [CaTS] ForgetMeNot - Week 10: Peltier cooling experiment
- [CaTS] ForgetMeNot - Week 11: Starting the build
- [CaTS] ForgetMeNot - Week 11 (2): Continuing the build
- [CaTS] ForgetMeNot - Week 12: Finalising a few things
- [CaTS] ForgetMeNot - 3D Printing: EnOcean sensor bracket
- [CaTS] ForgetMeNot - 3D Printing: EnOcean rocker switch and magnet holder
- [CaTS] ForgetMeNot - 3D Printing: Food dispenser prototype
- [CaTS] ForgetMeNot - 3D Printing: Weighing scale
- [CaTS] ForgetMeNot - Security: Some basic tips
- [CaTS] ForgetMeNot - Minion: Dave, the gassy minion
- [CaTS] ForgetMeNot - Pi Camera: Wide Angle Lens
Introduction
There was still some work to be done on the build itself. Like a true Minion, I worked and worked until it was done (and mainly because time is running out)!
I also came up with a some small practical thing for the care system.
Finishing the build
As I said, there was still some work to be done there. Painting, decorating, some wiring that was still pending. I went to the hardware store, got the needed supplies and got to work.
I drilled holes to pass the water and food dispensers to the front, above the bowls, I mounted the camera with LED ring for lighting and installed magnets in the front part of the build.
The goal is to attach the front plate using strong magnets to keep it removable for maintenance and easy access to the electronics.
Then came the paint ... Two coats of "dove white" paint did the trick, and the whole things looks much cleaner already. But I still wanted to keep a wood element in the build, which would also serve to make the overall look cleaner by hiding the cut edges.
What do you think, do you like it ?
Because the sponsors were so generous over the course of the challenge, I put stickers on the side as a little thank you.
The build was then moved from the garage into the house. I wanted to see how the cats reacted to this new construction. But without too much hesitation, they started eating from it.
The system's first customer was satisfied
Decoration
As a way to involve my daughter in my projects, I let her help with little things. In this case, I put her to work on some small decoration of the build.
Of course, she first practiced on paper
You'll have to wait for the summary (coming tomorrow morning) to see the final result!
Maintenance mode
One thing I thought would be very useful, and is in fact really necessary, is a "maintenance mode" button.
You don't want the system to start dispensing water when you remove the bowl to clean it.
Before dispensing water (or food), the system will check if maintenance mode is enabled or not before doing anything.
This is implemented using the EnOcean rocker switch and made available in openHAB as well.
The rules are as follows:
var OnOffType Maintenance = OFF rule "Maintenance mode" when Item EnOcean_switch_00298B1AB received update then Maintenance = EnOcean_switch_00298B1AB.state as OnOffType end rule "Water Dispenser" when Item Rpisoc_weightWater received update then var water_level = Rpisoc_weightWater.state as DecimalType if(Maintenance == OFF && water_level < 100) { //Refill if less than 100ml in bowl executeCommandLine("/home/pi/psoc_2_pi/API_Python_v_1_1_1/cats_water.py") } end
The "Maintenance" variable is updated when the rocker or GUI is updated and the water dispensing rule checks the value of that variable to decide wether it should dispense or not.
That's it
That's it. I'm working on the final summary, which I should post tomorrow. It will also include a demo video of the different features of the pet care system.
Top Comments