Home > Projects > Limb Shaker

Limb Shaker

Summary of Limb Shaker


This project uses an Arduino MKR1000 and a stepper motor to shake fig tree limbs, deterring birds and squirrels. The system pulls down and releases the limb in timed cycles controlled by a driver board. Despite challenges with buggy beta software and hardware failures, the author successfully implemented a shaking sequence using specific timing parameters for steps and direction changes to effectively scare away pests without manual intervention.

Parts used in the Limb Shaker:

  • DC motor (generic)
  • Arduino MKR1000
  • Allegro board containing A3982 power driver
  • Battery
  • Oscilloscope

A stepper motor shakes a limb to frighten away birds and squirrels. It is under the control of the MKR1000.

Limb Shaker

Things used in this project

Hardware components

DC motor (generic)
× 1
Arduino MKR1000
Arduino MKR1000
× 1

Story

Quick Solutions to Questions related to Limb Shaker:

  • How does the device frighten birds and squirrels?
    The project uses a stepper motor to pull down on a fig tree limb and release it upward to shake the limb.
  • What is the function of the Arduino MKR1000 in this setup?
    The MKR1000 controls the stepper motor to execute the shaking pattern and manage the timing sequences.
  • Can the system run automatically after a reset?
    Each execution begins manually via a microcontroller reset, though the original plan intended for automatic series of executions.
  • What voltage levels control the motor direction?
    A voltage of 3.3 V causes the motor to rotate CCW, while 0.0 V also rotates it CCW according to the waveform description.
  • What are the specific time values used for the step period?
    The final step period T0 was set to 5 ms, with a direction change time T1 of 80 ms.
  • Which pin on the MKR1000 is used for the motor step signal?
    Pin 6 is assigned as the motor step pin in the digital I/O configuration.
  • Does the code use Serial.print for debugging?
    No, the author gave up on Serial.print because forum discussions indicated it did not work well.
  • What caused delays in the project development?
    Delays were caused by burning out two motor driver chips and discovering a buggy attach function for interrupts.

About The Author

Ibrar Ayyub

I am an experienced technical writer holding a Master's degree in computer science from BZU Multan, Pakistan University. With a background spanning various industries, particularly in home automation and engineering, I have honed my skills in crafting clear and concise content. Proficient in leveraging infographics and diagrams, I strive to simplify complex concepts for readers. My strength lies in thorough research and presenting information in a structured and logical format.

Follow Us:
LinkedinTwitter
Scroll to Top