element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet & Tria Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • About Us
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      • Japan
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Vietnam
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Experts, Learning and Guidance
  • Technologies
  • More
Experts, Learning and Guidance
Ask an Expert Forum arduino using hall effect sensor and servo
  • Blog
  • Forum
  • Documents
  • Leaderboard
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Experts, Learning and Guidance to participate - click to join for free!
Actions
  • Share
  • More
  • Cancel
Forum Thread Details
  • State Not Answered
  • Replies 3 replies
  • Subscribers 305 subscribers
  • Views 797 views
  • Users 0 members are here
Related
See a helpful answer?

Be sure to click 'more' and select 'suggest as answer'!

If you're the thread creator, be sure to click 'more' then 'Verify as Answer'!

arduino using hall effect sensor and servo

Former Member
Former Member over 13 years ago

I am trying to use a hall effect sensor to activate a servo. I want the servo to move to a specific position when the hall effect sensor is activated and then move back when the sensor is deactivated. When I go to the analog read and look at the values I get from the hall effect sensor, the values are 0 when deactivated, but they range from 195-215 when acivated. I think this is why the servo twitches, but im not certain. I think I should have the input read 0 or 1. When he input is 1 the servo should move to this position and move back for values of 0.  Can you help me out? Heres the code I have so far

 

 

 

 

 

 

#include <Servo.h>

 

Servo myservo;  // create servo object to control a servo

 

int inPin = 0;    // select the input pin for the Hall Effect Sensorr

int val;    // variable to read the value from the analog pin

 

void setup()

{

  myservo.attach(9);  // attaches the servo on pin 9 to the servo object

}

 

void loop()

{

  val = analogRead(inPin);            // reads the value of the Hall Effect Sensorr (value between 0 and 300)

  val = map(val, 0, 300, 0, 20);     // scale it to use it with the servo (value between 0 and 20)

  myservo.write(val);                  // sets the servo position according to the scaled value

  delay(15);                           // waits for the servo to get there

  • Sign in to reply
  • Cancel
  • Catwell
    0 Catwell over 13 years ago

    Drew,

     

    The hall effect sensor is going to return a wide range of values.

     

    So, you need to make assumptions. For example, if the value is over 100 then it is equal to a logic 1. Below 50 should be a logic 0. In other words do not count of the sensor to return a definitive value. It isn't as simple as a switch.

     

    Alternatively, you may want to look into reed switches. These are switches that work similarly.

     

    Cabe

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • billpenner
    0 billpenner over 13 years ago

    look into using a Hall switch. these hall devices are digital. that is they are either on or off. The trigger point is very precise so you can do accurate positioning. Adjustment is simple, just move the magnet.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • billabott
    0 billabott over 13 years ago

    Does your servo still twitch?  You may be updating it too quickly.  Add a pause or only send a new value every 10th time throught the loop.

     

    I have some NO reed switches on their way to my house .  The 24 volt 60 watt Rhino Industrial Power Supply arrived today.  The IMO iSmart test and review is going to be in full swing very soon.  On the output side, does anybody really fuse the coil side of a Relay (SPDT 5 Pins 24VDC 10A 120V Contact) to protect the PLC from a short?  Isn't the relay coil much more likely to fail via an open than a short?  Just want to hear some solid professional opinions on that issue.  thanks in advance.

     

    I can certainly understand the need to added safety on the output side of the relay if substantial voltage and/or current is involved.

     

    P.S. I almost forget.  I was reading this awesome discussion of reed and Hall effect device with videos of the test with three different strength Neo-magnets.  It can be found here.  Sorry that it is on a .com site.  Hope that does not offend anyone here.

     

    Cheers.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube