首页 > 分享 > Arduino

Arduino

一、继电器的基础知识 


参考: Easy EDA #学习笔记03# |3C-GO继电器驱动电路Realay

二、电路连接

D13-----------INT(继电器)

D6-----------DO(土壤湿度传感器)

A5----------- AO(土壤湿度传感器)

GND-----------GND

VCC-----------VCC

Arduino Nano 与 继电器 土壤湿度传感器、3V水泵连接的电路图如下:

 

三、参考程序

int sensorpin = 8;

int pumpin    = 13;

int var;

void setup() {

  Serial.begin(9600);

pinMode(8,INPUT);

pinMode(13,OUTPUT);

}

void loop() {

  var = digitalRead(8);

if(var==HIGH)

  {

digitalWrite(pumpin,LOW);

delay(3000);

digitalWrite(pumpin,HIGH);

    }

else

    {

digitalWrite(pumpin,HIGH);

    }

    Serial.print("var=");

    Serial.println(var);

int var2=digitalRead(pumpin);

    Serial.print("var2=");

    Serial.println(var2);

delay(10000);

}

实例代码2 

int sensorpin = 6;

float pumpin = 13;

int var;

int var3;

int sensorpin2 = A5;

void setup() {

Serial.begin(9600);

pinMode(sensorpin,INPUT);

pinMode(sensorpin2,INPUT);

pinMode(pumpin,OUTPUT);

digitalWrite(pumpin,HIGH);

}

void loop() {

var = digitalRead(sensorpin);

int var2=digitalRead(pumpin);

var3=analogRead(sensorpin2);

Serial.print("var3:");

Serial.println(var3);

if(var==1&&var3>600)

{

Serial.print(var);

Serial.println("缺水状态!");

digitalWrite(pumpin,LOW);

Serial.println("水泵状态-打开");

delay(1000);

digitalWrite(pumpin,HIGH);

Serial.println("水泵-关闭");

}

else

{

digitalWrite(pumpin,HIGH);

Serial.print(var);

Serial.println("不缺水状态!");

Serial.println("水泵-关闭");

}

delay(1000);

}

休眠模式、看门狗(2020/11/12)

参考资料:Arduino休眠模式和看门狗以及中断详解

#include <Servo.h>

#include <avr/sleep.h>

#include <avr/wdt.h>

int sensorpin = 6;

float pumpin = 13;

int var;

int var3;

int sensorpin2 = A5;

void Sensor_();

int data = 0;

ISR(WDT_vect)

{

data++;

}

void setup() {

Serial.begin(9600);

pinMode(sensorpin,INPUT);

pinMode(sensorpin2,INPUT);

pinMode(pumpin,OUTPUT);

digitalWrite(pumpin,HIGH);

set_sleep_mode(SLEEP_MODE_PWR_DOWN);

sleep_enable();

MCUSR &= ~(1<<WDRF);

WDTCSR |= (1<<WDCE) | (1<<WDE);

WDTCSR = 1<<WDP1 | 1<<WDP2;

WDTCSR |= _BV(WDIE);

}

void loop() {

Sensor_();

delay(50);

if (data>=3600)

{

Sensor_();

data=0;

}

sleep_cpu();

}

void Sensor_()

{

var = digitalRead(sensorpin);

int var2=digitalRead(pumpin);

var3=analogRead(sensorpin2);

Serial.print("var3:");

Serial.println(var3);

if(var==1&&var3>600)

{

Serial.print(var);

Serial.println("缺水状态!");

digitalWrite(pumpin,LOW);

Serial.println("水泵状态-打开");

delay(1000);

digitalWrite(pumpin,HIGH);

Serial.println("水泵-关闭");

}

else

{

digitalWrite(pumpin,HIGH);

Serial.print(var);

Serial.println("不缺水状态!");

Serial.println("水泵-关闭");

}

}

 


划重点
本人在CSDN论坛写的所有文章,仅针对本人自身做学习记录,不全面,不详细,还请见谅!

如果有小伙伴真心需要我做详细解答,欢迎加入我的知识星球知识星球「Naiva的知识问答社区」

特别说明:回答问题/发帖分享经验都能赚钱啦!为了鼓励大家积极踊跃分享,互相交流答疑解惑,特组织答疑返佣金活动。

相关知识

【雕爷学编程】Arduino智慧农业之土壤湿度监测
【雕爷学编程】Arduino智能家居之家庭植物智能灌溉系统
【雕爷学编程】Arduino智慧农业之根据光照强度进行遮阳器的控制
基于Arduino的智能花卉灌溉系统设计
Arduino实验38:土壤湿度检测
基于物联网的花卉养护远程监控系统设计
如何监测土壤pH值和水分含量
“芯·花”智能香薰艺术品设备
如何用ESP32做一个智能检测花盆
智慧农业:4个经典智慧灌溉电路方案设计

网址: Arduino https://m.huajiangbk.com/newsview115739.html

所属分类:花卉
上一篇: 朱顶红的光照/土壤/温度/水分/
下一篇: 茉莉花土壤要求