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
Arduino
  • Products
  • More
Arduino
Arduino Forum hi every body
  • Blog
  • Forum
  • Documents
  • Quiz
  • Events
  • Polls
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Arduino to participate - click to join for free!
Actions
  • Share
  • More
  • Cancel
Forum Thread Details
  • State Suggested Answer
  • Replies 10 replies
  • Answers 2 answers
  • Subscribers 402 subscribers
  • Views 960 views
  • Users 0 members are here
  • industrial_automation
Related

hi every body

Former Member
Former Member over 11 years ago

I have an arduino project as assignment

 

and im just a bigenner

i really need a help , and just to know what i should do with it

 

Design an interface circuit to measure the speed of a prime mover using an Arduino board and a 16x2 LCD . Assume a tacho-generator whose output voltage ranges from 0-10 V with sensitivity = 2 mV/ rpm is used as speed sensor

 

is it hard ? @

  • Sign in to reply
  • Cancel

Top Replies

  • Former Member
    Former Member over 11 years ago in reply to dougw +1
    now i got it thank u very much
  • Former Member
    Former Member over 11 years ago in reply to dougw +1
    i found the map function is very useful #include <LiquidCrystal.h> LiquidCrystal lcd(12, 11, 5, 4, 3, 2); int y=0; int x=0; void setup() { lcd.begin(16, 2); pinMode(y,INPUT); } void loop() { x=analogRead…
Parents
  • mcb1
    0 mcb1 over 11 years ago

    I have an arduino project as assignment

    If we do your assignment, will we get the credits ?

    I'm guessing that this isn't the first time your class has touched either Arduino or microcontrollers, since you don't throw people into a bottomless pool.

     

     

    There are plenty of tutorials on the web and on these pages.

     

    My suggestion is you do a design based on the information you have (ie the tach and the 0-10v), LCD 16x2 display.

    Don't attempt to design the solution/code yet just the blocks required.

     

    You obviously need to translate the 0-10v to 0-5v (or 0-3v3 for some versions) so that's another block.

    10v divided by 2mV is 5000 so you already have the maximum number to display.

     

    Once you have all the blocks and the basic design you can then either write the code, or search for code that suits.

    Douglas has pointed you to the LCD and there are plenty of others for measuring analogue voltages..

     

    If you get stuck with parts of your code, then feel free to ask for advice, there are lots who can offer advice, but won't do it for you.

     

    Mark

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Reject Answer
    • Cancel
  • Former Member
    0 Former Member over 11 years ago in reply to mcb1

    Now

     

    I have 5 block

     

    1) the generator

    2) signal conditioning  , i will use 2 resistance each 1k , and take the measurment from el middle

    3) tach sensor

    4) arduino

    5) LCD

     

    I want a help in writing the code , i should take the output and mul by2  , and divide it .002

     

    sarah

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • mcb1
    0 mcb1 over 11 years ago in reply to Former Member

    sarah

    Your step 2 will give you a voltage between 0 and 5 on the middle pin, which is within range of the Arduino.

    The tachometer is currently giving 2mV / Rev, and if you divide it by 2 (2x1k resistors as a voltage divider) then its 1mV / Rev, so you don't need to divide then multiply.

     

    Have you actually tried the example Douglas pointed you to?

    It has all the connections and as a bonus is already measuring an analog voltage.

     

    I suggest you do the example, get that working then look at modifying it to suit your task.

     

    I always find it useful to understand what I'm trying to achieve before trying to write the code.

    That way you can see where you need to go/modify or change.

    I'm not sure you have that yet.

     

    Mark

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • Former Member
    0 Former Member over 11 years ago in reply to mcb1

    #include <LiquidCrystal.h>
    LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
    int y=0;
    int x=0;

    void setup()
    {
      lcd.begin(16, 2);
    pinMode(y,INPUT);
    }
    void loop()
    {
      x=analogRead(y);
      lcd.print("sarah");
    lcd.setCursor(0, 1);
    x=x/.01;
    lcd.print(x);
    delay (100);
    lcd.clear(); }

     

      I did it image

     

    but i don't understand ur note "

    The tachometer is currently giving 2mV / Rev, and if you divide it by 2 (2x1k resistors as a voltage divider) then its 1mV / Rev, so you don't need to divide then multiply.

    "

     

    i know that i have to return the last value of the voltage , u mean i just shall mul  by 2 ?

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • mcb1
    0 mcb1 over 11 years ago in reply to Former Member

    sarah

    It seems you have done part of it.

     

    Have you measured the analog voltage that was in the tutorial....?

    I know your setup is different to the tutorial as the pin numbers for the lcd are swapped...which is fine.

     

    If you understand the Analog and how it works, you will understand that you get a number between 0 (0volts) and 1023 (5volts).

    Arduino - AnalogRead

    In your assignment the tachometer gives 0-10v which represents .002 V per Revolution.

    When its divided by 2 (with the resistor divider) it now gives 0 - 5v and .001V per Revolution.

     

    You can simulate your tachometer by connecting the top of the resistor divider to the 5v..

    You will get half the 5v (2.5v) which equals 2500rpm.

    By using a second divider (another 2 resistors) you would get 1250 rpm.

     

    mark

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
Reply
  • mcb1
    0 mcb1 over 11 years ago in reply to Former Member

    sarah

    It seems you have done part of it.

     

    Have you measured the analog voltage that was in the tutorial....?

    I know your setup is different to the tutorial as the pin numbers for the lcd are swapped...which is fine.

     

    If you understand the Analog and how it works, you will understand that you get a number between 0 (0volts) and 1023 (5volts).

    Arduino - AnalogRead

    In your assignment the tachometer gives 0-10v which represents .002 V per Revolution.

    When its divided by 2 (with the resistor divider) it now gives 0 - 5v and .001V per Revolution.

     

    You can simulate your tachometer by connecting the top of the resistor divider to the 5v..

    You will get half the 5v (2.5v) which equals 2500rpm.

    By using a second divider (another 2 resistors) you would get 1250 rpm.

     

    mark

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
Children
  • Former Member
    0 Former Member over 11 years ago in reply to mcb1

    honestly

     

    i can't understand what do u mean  :/

     

    about the the Analog and how it works

     

    if there's any mistakes just tell me , i will try to repair and fix it

     

    thanks a lot 4 ur following my teacher

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • dougw
    0 dougw over 11 years ago in reply to Former Member

    Full scale output from the tach is 10V = 5000rpm. If you divide this voltage by 2 with resistors now you have 5 V still at 5000 rpm. This 5 V at the A/D is read as 1023 (which is just full scale on the 10 bit A/D). To convert the 1023 reading to 5000 rpm you need to multiply by 4.89. So for this tach, all A/D readings should be multiplied by 4.89 if you use a divide by 2 voltage divider.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • Former Member
    0 Former Member over 11 years ago in reply to dougw

    now i got it

     

    thank u very much

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • Former Member
    0 Former Member over 11 years ago in reply to dougw

    i found the map function is very useful

     

    #include <LiquidCrystal.h>
    LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
    int y=0;
    int x=0;

    void setup()
    {
      lcd.begin(16, 2);
    pinMode(y,INPUT);
    }
    void loop()
    {
      x=analogRead(y);
    x = map(x, 0, 1023, 0, 5);
    x = x*2 ;

     
      lcd.print("sarah");
    lcd.setCursor(0, 1);
    x=x/.01 ;
    lcd.print(x);
    delay (100);
    lcd.clear(); }

    • Cancel
    • Vote Up +1 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