Advertisement
safwan092

Project_11100_Arduino_flow_wind

Feb 12th, 2023
21
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.29 KB | None | 0 0
  1. #include <SoftwareSerial.h>
  2.  
  3. #define windsensor A0
  4. #define flowsensor 2
  5. #define ttlRxPin 3
  6. #define ttlTxPin 4
  7.  
  8. SoftwareSerial softSerial(ttlRxPin, ttlTxPin);
  9.  
  10. unsigned long currentTime;
  11. unsigned long pulse_freq;
  12. unsigned long lastTime;
  13. float outputValue = 0;
  14. int sensorValue = 0;
  15. double flow;
  16. float X;
  17. int Y;
  18.  
  19. void pulse () {
  20. pulse_freq++;
  21. }
  22.  
  23. void setup() {
  24. Serial.begin(9600);
  25. softSerial.begin(9600);
  26. pinMode(flowsensor, INPUT);
  27. pinMode(windsensor, INPUT);
  28. attachInterrupt(0, pulse, RISING);
  29. currentTime = millis();
  30. lastTime = currentTime;
  31. }
  32.  
  33. void loop () {
  34. sensorValue = analogRead(windsensor);
  35. outputValue = map(sensorValue, 0, 512, 0, 56);
  36. currentTime = millis();
  37. if (currentTime >= (lastTime + 1000))
  38. {
  39. lastTime = currentTime;
  40. flow = (pulse_freq / 7.5);
  41. pulse_freq = 0;
  42. Serial.print("Flow Rate: ");
  43. Serial.print(flow);
  44. Serial.print(" L/Min \t\t\t");
  45. Serial.print("Wind Speed: ");
  46. Serial.print(outputValue);
  47. Serial.println(" m/s");
  48. Serial.println("****************************************");
  49. X = flow;
  50. Y = outputValue;
  51. softSerial.print(X, 2);
  52. softSerial.print("X");
  53. softSerial.print(Y);
  54. softSerial.print("Y");
  55. softSerial.print("\n");
  56. }
  57. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement