Output is 8 output each time

Talk about Arduino board, sheilds. Sharing Arduino projects, program, problems, solutions, suggestions..... many more, all are welcome.

Output is 8 output each time

Postby Hidayah » Thu Nov 28, 2013 7:22 pm

hye there... im used ph sensor and arduino uno...
why my result is display at LCd and serial monitor is 8 ph value each time? like picture below...and the ph print that should appear is not appear at

and here is coding that i used...thanks...

CODE: SELECT_ALL_CODE
#include <LiquidCrystal.h>

// initialize the library with the numbers of the interface pins
LiquidCrystal lcd(7,8,9,10,11,12);

#include <SoftwareSerial.h>                                                    //add the soft serial libray
#define rxpin 2                                                              //set the RX pin to pin 2
#define txpin 3                                                              //set the TX pin to pin 3


SoftwareSerial myserial(rxpin, txpin);                                         //enable the soft serial port


String inputstring = "";                                                       //a string to hold incoming data from the PC
String sensorstring = "";                                                      //a string to hold the data from the Atlas Scientific product
boolean input_stringcomplete = false;                                          //have we received all the data from the PC
boolean sensor_stringcomplete = false;                                         //have we received all the data from the Atlas Scientific product


  void setup(){                                                                //set up the hardware
     Serial.begin(38400);                                                      //set baud rate for the hardware serial port to 38400
     myserial.begin(38400);                                                    //set baud rate for software serial port to 38400
     inputstring.reserve(1);                                                   //set aside some bytes for receiving data from the PC
     sensorstring.reserve(1);      //set aside some bytes for receiving data from Atlas Scientific product
     lcd.begin(16, 2);
     lcd.println("Ph : ");
   }
 
 /*
 
   void serialEvent() {                                                         //if the hardware serial port receives a char
               char inchar = (char)Serial.read();                               //get the char we just received
               inputstring += inchar;                                           //add it to the inputString
               if(inchar == '\r') {input_stringcomplete = true;}                //if the incoming character is a <CR>, set the flag
              } 
 
*/
 
 void loop(){                                                                   //here we go....
     
  if (input_stringcomplete){                                                   //if a string from the PC has been recived in its entierty
      myserial.print(inputstring);                                             //send that string to the Atlas Scientific product
      lcd.println(inputstring);                                                  //
      inputstring = "";                                                        //clear the string:
      input_stringcomplete = false;                                            //reset the flage used to tell if we have recived a completed string from the PC
      }
 

  while (myserial.available()) {                                               //while a char is holding in the serial buffer
         char inchar = (char)myserial.read();                                  //get the new char
         sensorstring += inchar;                                               //add it to the sensorString
         if (inchar == '\r') {sensor_stringcomplete = true;}                   //if the incoming character is a <CR>, set the flag
         }


   if (sensor_stringcomplete){                                                 //if a string from the Atlas Scientific product has been received in its entirety
       Serial.print(sensorstring);        //use the hardware serial port to send that data to the PC sensorstring = "";
      lcd.setCursor(0, 1);
      lcd.println(sensorstring);        //print the current status of the pH into the LCD                                                             //clear the string:
       sensorstring = "";
       sensor_stringcomplete = false;                                         //reset the flag
      }
      delay(10000);   // Wait about 10 seconds to display

     
}
Attachments
new.JPG
Hidayah
Novice
 
Posts: 30
Joined: Thu Jun 06, 2013 12:12 am

Re: Output is 8 output each time

Postby atuk5259 » Mon Dec 16, 2013 5:17 pm

1-Ph sensor come with storage liquid (small bottle).. are u remove the buffer liquid and test at actual or buffer liquid (calibration liquid) ?...

2-Your sensor reading is 6.XX....not 8.XX.

3-pls caibrate your sensor to get actual reading..(refer datasheet)
atuk5259
Newbie
 
Posts: 11
Joined: Mon Apr 22, 2013 1:48 pm

Re: Output is 8 output each time

Postby shahrul » Mon Dec 16, 2013 6:56 pm

You can test with provided fluid with ph 4, 7 and 10. There is also can calibrate with the test fluid.
User avatar
shahrul
Professional
 
Posts: 812
Joined: Sat May 16, 2009 9:54 pm
Location: Selangor


Return to Arduino Based

Who is online

Users browsing this forum: No registered users and 15 guests

cron