A rough week for Frank – but he’s learning!

There’s been quite a lot of weather over the U.K. in the last week. Nothing like what’s battering the U.S. at the moment but it’s not often (thankfully) we get 70-80mph winds in Milton Keynes.

Sadly for Frank however, the results of storm Ellen were pretty dramatic. Severe winds resulted in the arrival of the emergency lumberjacks to remove his tree after it became very likely it was going to topple onto a neighbour’s house.

He came back and hung around for a while forlornly..

F9DFAAB8-DFC9-4819-9DA9-8FCF1B1CAB93

Before they came back and removed the rest of the tree completely.

686C1622-CB96-43E1-A505-691A87242A3B

You never realise the size of something, until it’s not there anymore! The tree’s removal opened a fairly significant gap in our little horizon. I can now see the dogs that make all the noise. :/

Storm Ellen was followed quickly by Storm Francis… and poor Frank looked like he’d had just about enough of all of this.

Screenshot 2020-08-25 at 09.41.09

I also had to close the diner whilst the storms raged. the sheer volume of water falling out of the sky flooded the Pi Camera set up completely – and fried the Pi into the bargain. Doh. I did keep throwing seed out for Frank so he at least had something to peck at.

The camera set up has now had the Pi replaced and been further battle hardened and we thankfully haven’t had any further mishaps.

So we went into last weekend a little bedraggled and despondent it must be said. Then, the sun came back for a few hours and dried everything out which was shortly followed by a familiar sight landing on the shed roof.

Frank was back… and this time… He found the button!

As you can see, and was expected, the motor noise made him jump this time and fly off. He’s since been back and is still sniffing around tentatively so it’s not scared him off *completely*

I’m really pleased that the feeder has held up in all this weather and that the button actually did what it’s supposed to, when it’s supposed to – I’ll take that as a giant leap forward for this endeavour. I’m genuinely hopeful that Frank will make the leap between button and food with a few more attempts!

Stay tuned for updates and progress.

Until next time.

 

Read More

Teaching Pigeons with Raspberry Pi – UPDATE!

UPDATE! – 16/08/2020

(If you’ve not seen the original post, you can read it HERE)

So, it turns out my first design was actually…. pants. It exhibited several issues right from the get go which I’d hoped would sort of see themselves right, turned out not to be the case. The flap either needed to be held in place (therefore using the motor constantly and draining the batteries and generally putting a bit too much stress on the whole system) or off, which then means you had to be extremely careful with the weight of the seed else it would just dump everything all over the place. It did this a lot.

I actually want to set this up outside, and for a considerable period of time. I looked around online for ‘automatic bird feeders’ for inspiration as to how to build a reliable mechanism. You’ll find a lot of farming type equipment, but very little in the way of wild bird feeders.

The mechanism, it has to be reliable and be able to deliver a set amount of seed each time. I decided the easiest / most straightforward option was either a water wheel type set up or an Archimedes screw to deliver the seed.

I went with a wheel design first off, I used OpenScad to design a cog-type wheel then cut three of them and sandwiched it all between two plates.

E18374DC-F860-443F-9BC8-E40E5A0E660B

The stepper motor and the Pi etc are now all mounted behind the main board. I then built a box with a cut out for the seed to drop from, I also made sure the spacing was such that the seed can’t get caught anywhere and jam the mechanism.

7453918B-0EDE-4642-BC31-8E3C53C9B58E

I built a front window using an old CD case. From the experiments I’ve seen, the birds need to be able to actually see the prize!

D2E72E74-2BEF-40E9-AE1F-D7AD7805F64F

I then build a rear box to cover all the electronics, and gave it some serious weather-proofing with a proper shed roof and many, many coats of lacquer.

5076602B-BA1F-4123-84A8-E279A4C41A40

I now feel this will stand up to the elements – and hopefully visitors! I’ve also managed to complete the OpenCV motion detection with the Raspberry Pi camera. I was going to run it all off the same Pi, and it was set originally up this way. I then had a DOH! moment when I realised the camera cable is 50cm long…. and the focal length of the Pi camera is a minimum of 1m :(

I’ve therefore offloaded this work to another Pi set up. This is motion activated and records a three minute video with a timestamp when something steps in front of the camera. The birds tend to visit the garden in regular waves so it’ll be interesting so see exactly how regular their visits are.

This is now all being moved to the shed roof and I’m looking forward to seeing what our feathered friends make of the whole affair!

Stay tuned for updates and training progress.

Until next time…

Read More

Teaching Pigeons… with Raspberry Pi!

I’ve seen and read a few pieces over the years that demonstrate our feathered friends might be a wee bit brighter than they’ve been letting on. There was a BBC documentary from a long while ago entitled ‘Bird Brain of Britain’ which showed some of the simply amazing feats that birds are capable of – including using tools and solving puzzles. Wonderfully, there’s a couple of versions available on YT, the quality is not the best but still highly watchable and definitely worth checking out.

During lockdown we’ve spent a lot of time looking out into the garden and realising the range of nature we get in our tiny patch of greenery. We’ve been feeding the birds and have been largely getting starlings, sparrows, blackbirds and the occasional finch / tit (never too sure which and they’re usually too fast to tell anyway!)

19F45C28-C51A-4BB6-A4B1-2215CD80344A

Kids eh?

And then there’s Frank…..

69A7D9D5-E145-40D2-85A1-A6BE154E62F8

(We’re actually supposed to call him not-Frank, but that’s another story)

So, Frank’s been getting a pretty easy ride this summer, he’s definitely boss of the shed roof and likes to strut his stuff. I thought therefore, it was time to put some bird brains to the test.

There’s been a lot of research into Cognitive Behaviour in animals over the years. Birds have often been shown to have some pretty cool skills and there’s been many papers published in the field – including the fantastically titled Maladaptive gambling by pigeons which is all about pigeons pressing buttons and making some pretty impressive decisions for a bird! It was written by Professor Thomas Zentall, a world renown expert in the domain of animals and cognitive behaviour.

Pigeons can, with practice, recognise objects including switches and buttons and then make the mental leap to realise these buttons actually result in something happening. I find this totally fascinating and would love to see it actually happening.

With all of that in mind, and little clue of how to go about it (as usual), I began to hack together a seed dispenser that could be pigeon-operated.

Introducing the SmartFrank 3000 (TM) – now available in literally no stores!

3279696C-C6F5-4C08-8BFC-F0E37FE28C10

Early testing with standard issue pigeon. (Foam Frank Model A.)

Two main issues immediately arose in the ‘how do I do this then?’ stage  (I believe this is also known as ‘design’)

  • The switch
  • The dispenser

I did some brief tests with a Raspberry Pi and a servo and quickly realised that, unless you wanted to deliver a veritable banquet to the recipient with every push of the button, a servo couldn’t move fast enough to open and close a hatch quickly or strongly enough.

I then found a stepper motor from an earlier project and some tests confirmed that a stepper was the perfect motor to move quickly enough, and with enough oomph to hold back a fair weight of seed when not in operation.

I 3D printed a ‘flap’ for the stepper, and a nozzle that fits over the neck of a two litre drinks bottle.

C625E068-0DB2-49B8-A08A-5C42B89C5CB1

The motor set up.

I then laser cut some pieces to make a frame and hold it all together.

2705A801-0BD8-47B8-AFFE-6B00C8C33E4C

It took a while to get the timing on the stepper just right to give a pretty consistent delivery of the seed. Yeah, there was quite lot of this whilst working it out!… :/

15808902-D7E4-4E74-844A-8DED8EC1EB68

Moving on to the switch, I realised that this isn’t the first animal-Pi-interaction I’ve worked on. I previously designed a prototype switch that could be used by service dogs in people’s homes. The button below went into a 3D printed case which our canine friend could then nudge with its nose and the signal was transmitted over radio to operate switches etc.

64BB452E-1E87-4433-B9A7-8BF77313CAF0

Not going to work this time however..

Also, RS Components and the like aren’t overflowing with pigeon-focused electronics (seems a bit remiss) so I had to come up with something else.

The result was sort of an ice-cream sandwich lookalike made from 3mm ply and some sponge as the spring.

90FD2C9C-49AA-4BB7-97AF-2C0D3FA25604

I soldered some wires to a spring clip from an old photo frame and added a bolt and two nuts.

E32E2746-B89D-4834-9F5D-36B8D67CE813

(Should have taken the photo *before* sticking it all down!)

The second nut allowed me to very finely adjust the distance to make sure the switch was as light a touch as possible.

351700EC-A43C-40B6-8E80-C12EDDF00F49

The completed SmartFrank 3000! (TM) I added the ramp to help push the seed out and away and it seems to work well.

Behind the curtain…..

1BCEF268-D783-4088-8E98-10015E150A97

Behind the scenes there’s a Raspberry Pi 3b+ running the show with a motor controller board to run the stepper motor. This runs from its own battery pack as it runs at 12v and is therefore too heavy for the Pi to handle directly. I also added a Pi camera and am using the motion detection script from a previous project to starting recording whenever a likely candidate steps up to the plate for dinner. Hopefully in this way I can get some really cool footage of Frank learning and earning :)

So, training now starts in earnest and I’ve set up an introductory version of the button to help guide Frank to his goal.

538B726A-0A91-4453-A32D-60BE526B0602

I have suspicions that the motor is a bit noisy and will probably make him jump to start with. But he no longer bothers to fly off the shed roof when we go out into the garden so he seems to pretty quickly adapt to new stimuli.  From reading and watching I expect it to take a week or two for the birds to get used to it and start to investigate. I’m going to weather proof it and set up a semi-permanent footing on the shed roof (largely so it doesn’t just blow away).

This was a fairly straightforward project to put together, I suspect the real challenge is just beginning. I’m genuinely excited to see how this works out and whether Frank has got some smarts! I’m confident based on previous (serious) work that this is genuinely possible. It’s going to be fun finding out 😀

The Bird Brain of Britain programme from the BBC inspired a whole wave of families and children across the country to build puzzles for our feathered friends to solve, which they did with astonishing degrees of success. I’d love to see a 21st century version of this to see how they have adapted to new technology! The whole programme is brilliant but if you want to see what pigeons are capable of (and what I’d love to build next!) skip to 21:15 here: Bird Brain of Britain

Stay tuned for training progress and updates!

UPDATE 17/08/2020

So – that design was a bit pants… Here’s the significantly improved V2.0! – Click HERE for details.

5076602B-BA1F-4123-84A8-E279A4C41A40

 

Read More

DSLR Motion Capture with Raspberry Pi and OpenCV

IMG_9479

Having spent a week in bed with Covid symptoms, it was soooo nice be feeling better and wanting to get my head into something. I’ve had an idea rattling around my brain for a while (with and end goal in mind – more of that later)

I wanted to see if I could use motion detection using OpenCV on the Raspberry Pi to trigger my ‘real’ camera to actually take the pictures. Now, before aaaaaanyone asks why I didn’t use the spanky new Pi camera with some cool lenses, the reasons are twofold. I don’t have a Spanky new Pi camera. And I don’t have any cool lenses.

I do have Pi and Pi Camera V2, and a really nice Lumix camera my utterly amazing wife bought me for my last birthday. So I hit Amazon to find a cheap (ish!) remote for my camera and then proceeded to…. I believe break it better is the correct terminology.

I love it when things are actually screwed together – makes hacking them so much easier!

pic1

I was hoping to be able to just re-solder some connectors to the button but it was a dual function button depending on depth of press. I therefore got a set of probes out and traced which pins on the chip were responsible for the actual shutter release and then *carefully* managed to add two fine wires.

IMG_9429

Held in place with a blob of hot glue, I added Dupont cables to the ends so I could go into the breadboard. A very simple circuit using an NPN transistor to switch via GPIO gave me remote control of the camera from Python – success!

B688F4DA-463A-40B7-9592-9EBD24CDE391

Adding OpenCV was really straightforward thanks to Adrian over at PyImageSearch – he has an amazing range of tutorials and resources for OpenCV on the Pi – can’t recommend it enough.

I took the basic motion detection script and added a tiny hack to trigger the GPIO when motion was detected.

169B5C57-F278-444D-BDB4-B5ACC0DE67D9

I then added a delay to the start of the script so I could position stuff or myself in front of the camera with time to spare.

And with that in place we were done.

The camera was set to fully manual and to a really nice fast shutter speed. There is almost no delay at all between motion being detected and the Lumix actually taking pictures, I was really surprised how instantaneous it was.

DCA0B9E6-47E3-455A-BB3E-942E840D50B9

It was then time to mount everything on the tripod and go out in the garden and chuck stuff around!

IMG_9471

I also tried again later inside, but don’t quite have enough lighting to capture it as sharply as I’d like to.

9E647371-4C76-499A-A4E6-1002F1B8A0F4

So…. the reason this all started? I, like many people, have been feeding the birds in the garden with a selection of delicious treats including this lovely coconut husk / suet ball thing. Which is often raided, although I suspect in the wee small hours as I never actually witness it happening…

35CD3588-9C45-433F-BD9B-028C06B6EFEA

I’m now going to make a stand for this set up so I can sit it close enough to the feeding point and see if we can get some nice close up shots.

I’ll keep you posted with updates!

And on that note, until next time – Cheers!

IMG_9475

 

Read More