I’ve been interested in sundials for ages. Tracking the sun’s path by observing the shadow of a stick is an ancient form of astronomy, and a gateway into geometry (literally “measuring the earth”).
In my previous post, I covered the mechanical construction of the scale. In this post, I finish assembling the scale, calibrating it, and installing it.
After painting I put feet on the scale so it won’t soak in water spilled on the floor.
…then bolted the Arduino 101, Load Cell, and Load Cell Amplifier to the bottom plate. Continue reading Dog Water Bowl Scale, Part 3: Final assembly and installation
In my previous post, I started working on the scale. In this post, I finish the woodworking, and painfully re-learn the woodworker’s adage: “Measure twice; cut once”. Continue reading Dog Water Bowl Scale, Part 2: Measure Twice; Cut Once
Now that my Dog Bed Weight Scale is sending data, I’m going to have a go at a water bowl scale. The idea is that, like the bed, the bowl will periodically send its weight to a cloud. This data should tell me when Pippa drinks, when we refill her bowl, and (maybe) how much she drinks.
The work-in-progress sources on Github, contain the beginnings of the Arduino 101 Sketch, Bill of Materials (Parts List), mechanical design/construction details, and a day-by-day project diary. Continue reading Dog Water Bowl Scale, part 1: initial design work
In my previous post I changed the uploader app to run when the Raspberry Pi turns on, and installed the scale under Pippa’s dog bed. In this post, I get interesting data from the scale.
The scale has been running for a little over a week now, and has been surprisingly reliable for a first version. There is some sort of bug in which, every few days, the scale stops supplying new data BLE notifications to the gateway. I plan to refactor the scale and gateway to avoid that, but that’s another post.
Today I looked at the data and saw some very interesting things. Continue reading Dog Weight Scale part 16: Data!
In my previous post, I wrote the Raspberry Pi Node.js code to upload data from Pippa’s dog bed scale to data.sparkfun.com. This post covers how to make a Node.js program run automatically when the Pi is turned on. Oh, and at the end I installed the finished scale under Pippa’s bed.
By the way, the nRF Master Control Panel (BLE) from Nordic is the perfect tool for debugging Bluetooth Low Energy devices and messages. It understands a pile of standard Bluetooth data types,as well as the Physical Web, so it’s a quick way to find out whether your Arduino project is sending the right data. Continue reading Dog Weight Scale part 14: uploading data to data.sparkfun.com
In my previous post, I designed and printed a Centering Guide to line up the top and bottom pieces of the scale. In this post, I finish assembling the scale.
Now that I have the Load Sensor Holders that I designed and printed, I drilled mounting holes in the blocks that will hold the Load Sensors.
(I used only the two front holes you see in the picture; not the other hole)
From there I lined up the support blocks on the bottom plywood circle, used a hand drill to extend the mounting holes through that part, then used a drill press and Forstner bit (on the bottom side of the plywood circle) to counterbore the holes that will hold the nuts that hold the bolts down.
Note in the above picture that I’m using a support stand to hold the large plywood disk while I drill using the drill press. The support stand looks like a roller on a vertical bar. It’s a safety thing, to keep the plywood from crashing to the ground at the wrong time.
Once that was done it was an easy matter to line up each Load Sensor with the support blocks below it, slip the bolts through, and fasten them with the nuts.
After mounting the Load Sensors, I mounted and connected all the other parts: the Arduino, Load Cell Amplifiers, Protoboard with resistors on it, and the plastic Centering Guide.
Finally, here is the long-awaited, assembled version 2 Dog Bed Weight Scale, ready to be calibrated. It contains 4 Load Sensors, a pair of resistors per Load Sensor to change the Load Sensor into a Wheatstone Bridge, a Load Cell Amplifier per Load Sensor to measure the weight on each Load Sensor, and an Arduino to make sense of it all.
In my next post, I’ll describe the Raspberry Pi code to transfer data from the scale to the cloud.
In my previous post, I did a little woodworking on the scale. In this post, I start designing a 3D printed part that will keep the top of the scale centered on the bottom.
Ever since I measured the center of gravity of the top plywood circle, I’ve been puzzling through how to make sure that center of gravity stays centered on the bottom part of the scale. Without some sort of connection between the top and bottom plywood circles, the top will inevitably slide over time, messing up all the center of gravity calculations. On the other hand, if this connection between the top and bottom has much vertical friction, it will take some of the load of the scale, throwing off the weight calculation.
After having such success 3D printing a Load Sensor holder, I decided to have a go at a plastic part that would help keep the top and bottom plywood pieces aligned.
My plan is to drive a nail down through the top of the top plywood circle. Then whenever I need to place the top plywood circle on the bottom one, I can get close enough to center that the nail will be somewhere inside the 1.5″ diameter cone in the Centering Guide. From there, the sides of the cone should guide the nail to the center of the bottom plywood circle. Then the top and bottom pieces will be aligned.
At least that’s the theory. We’ll see.
Being new at designing for 3D printing, I’m not sure how to build an arch or corbel to support the cone. So I relied on the default Cura support structures, which take a lot of plastic.
Note the large amount of infill in the cylinder. I should be able to (eventually) come up with a design that doesn’t require so much plastic. On the other hand, since I’m only making one, I can put up with using 3.5 meters of filament this time.
While I was designing the Centering Guide, I tried to print four Load Sensor holders at once. Little did I know that I should mess with the print parameters for such a large print. I stopped the resulting print part way through. It was weird: the filament wouldn’t stick to the print bed, so little hairs started sticking up. The hairs then caught other print lines, until the whole thing started looking too frizzy to be useful. Going back to one-at-a-time prints seems to work fine.
In my next post, I finish mounting the Load Sensors and complete the final assembly of the scale.
In my previous post, I 3D-printed parts to hold down the Load Sensors. In this post, I fix the counterbored holes that keep the nuts from protruding below the bottom of the bottom piece of plywood.
In the woodworking post, I used a router to cut counterbore holes on the bottom side of the bottom piece of plywood. These holes hold the nuts that hold the circuit boards.
Unfortunately, the router bit wouldn’t cut the center of the hole, so it couldn’t cut deeper than about 1/8″ – about half of what I needed. Oh, and I probably burned the router bit too – don’t force the router, kids.
So I decided to try a Forstner bit. Forstner bits are designed for drilling counterbore holes; they make a nice, flat cylindrical hole. But I didn’t know whether I could use a Forstner bit in a router. It turned out well – the bit fit in the router and fits great in the plunge router.
I was able to set the plunge depth to the 1/4″ I need for the circuit board nuts, and in no time had cut all the holes to the correct depth. I think I set the speed low enough to keep from burning the bit.
In my next post I do some more 3D printing, both good and bad.