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
    About the element14 Community
  • 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 Having Trouble with Serial Monitor Average
  • 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 Not Answered
  • Replies 1 reply
  • Subscribers 415 subscribers
  • Views 292 views
  • Users 0 members are here
  • voltage_measurement
Related

Having Trouble with Serial Monitor Average

e14 Contributor
e14 Contributor over 13 years ago

I have a load cell hooked up to a strain meter, which is then output in to the arduino. I have 8 pounds applied to the load cell and that equals .80 volts read into the analog output pin. Of course, when I read it on the serial monitor, it isn't a constant .80 volts as it fluctuates because of noise. I have tried to average the serial monitor to get a better read to as close to .80 volts as I can get. Here is part of the code that I'm working with right now:

[code]

int sensorValue = analogRead(sensorPin);

 

  long sum = 0;

 

  float voltage = sensorValue * (5.0 / 1023.0);

 

  for(int i=0; i< 5; i++)

  {

    sum = sum + sensorValue;

 

    float voltage = sum / 1023;

   

    delay(300);

  }

 

  Serial.println(voltage, 3); 

[/code]

I changed the delay 3 times (300ms 1sec and 1 min) and then took a sample size of about 200 from the serial monitor and posted it on an excel spreadsheet to take the average. The average was always around .80V which is what I want, but the max and min are not close to .80V. There really is not difference between the 3 time intervals I've done. The max - min of each sample of each time interval is about .40V. It seems like the serial monitor is just printing out the voltage it reads after the delay instead of taking the average. I figured that if I took the average, the number it prints should be roughly the same each time. After having it average for a minute, there would be times where it would print .835V and then .795V (rough estimate). Is my code not really taking the average? Thank you for taking the time to read this.

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

    Hi Edward,

     

    I'm guessing (not very knowledgeable with Arduino) but it looks like you are defining a variable outside the loop (float voltage) but also inside the loop too. If you declare it inside the loop, then it is possible that it disappears and is not what you're printing outside the loop at the end of your code.

    I think the code in the loop needs the word 'float' removed basically.

     

    However, I didn't really understand how the loop was performing an average, if the value was read from the ADC just once when you issued the analogRead(sensorPin) statement.

    In your loop, the delay is therefore having no effect except just delaying to reach the same outcome as if there was no delay.

    So, I think you meant for the analogRead command to be inside your loop.

    • 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 © 2026 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.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube