Tag Archives: Project

Dog Water Bowl Scale, Part 3: Final assembly and installation

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.

Adding feet to the scale
Adding feet to the scale

…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

Dog Water Bowl Scale, part 1: initial design work

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

Dog Weight Scale part 16: Data!

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!

Dog Weight Scale part 15: scale is installed and uploading real 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.

Pippa, her bed, and the scale underneath
Pippa, her bed, and the scale underneath

Continue reading Dog Weight Scale part 15: scale is installed and uploading real data

Dog Weight Scale part 14: uploading data to data.sparkfun.com

In my previous post I finished the hardware for the scale and calibrated it. This post covers getting data from the scale to Sparkfun’s Data Warehouse.

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

Dog Weight Scale Part 13: Load Sensor Mounting and Final Assembly

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.

Holding a Load Sensor over a support block that has mounting holes in it
Holding a Load Sensor over a support block that has mounting holes in it

(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.

Counterboring holes to hold the nuts
Counterboring holes to hold the nuts

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.

Closeup of counterboring
Closeup of counterboring

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.

The assembled Load Sensor on its support blocks
The assembled Load Sensor on its support blocks

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.

Mounted and Assembled Version 2 Scale electronics
Mounted and Assembled Version 2 Scale electronics

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.

Top view of the assembled scale
Top view of the assembled scale

In my next post, I’ll describe the Raspberry Pi code to transfer data from the scale to the cloud.

 

Dog Weight Scale Part 12: More 3D Printing

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.

First draft Centering Guide
First draft Centering Guide

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.

Centering Guide being printed
Centering Guide being printed

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.

The result of 10% infill
The result of a big print: trying 4 load sensor holders in one print

In my next post, I finish mounting the Load Sensors and complete the final assembly of the scale.

 

Dog Weight Scale Part 11: Routing Counterbore holes

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.

bad counterbore holes that don't hold the nuts
bad counterbore holes that don’t hold the nuts

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.

A Forstner bit in the router
A Forstner bit in the router
The bit fits fine in the plunge router stand
The bit fits fine in the plunge router stand

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.

Setting the bit depth to 1/4"
Setting the bit depth to 1/4″

In my next post I do some more 3D printing, both good and bad.