DIY一个Arduino温度数据记录仪

  • 时间:
  • 浏览:27
  • 来源:pt游戏-pt老虎机平台

  在本项目中,我们将使用Arduino开发板制作一个温度数据记录仪,该设备从温度传感器LM35获取温度值,并从DS3231实时时钟模块获取时间。然后我们将使用mini SD卡模块将这些值存储在SD卡文件中。之后,我们从PC访问该文件,并在Microsoft Excel中创建这些数值的图表。

  该项目所需的组件如下

  Arduino开发板与DS3231时钟模块的连接方式如下所示

  Arduino开发板与SD卡模块的连接方式如下所示

  Arduino开发板与LM35温度传感器的连接方式如下所示

  

  LM35温度传感器以模拟方式输出信号。我们需要使用ADC转换此输出,以便能够测量温度。 Arduino开发板内置了一个ADC,通过它可以将LM35的输出转换成温度值。

  DS3231时钟模块通过I2C通信连接到Arduino。因此,我们只需要将DS3213上的SCL和SDA引脚与Arduino连接,模块就会开始通信。该模块有一个独立的电池,使得其在即使它没有Arduino供电时也能正常运行。

  然后使用SD卡模块将温度和时间存储在SD卡中。 SD卡模块将打开SD卡并在里面存储数据。之后,我们在PC上打开该文件,并且在Microsoft Excel中使用这些值生成一个图表。

  注意:如果您是第一次使用DS3231模块,则必须先设置时间和数据。要实现这一点,请根据您的时间更改代码中的时间和日期,并上传以下代码:

  DS3231 必发官网 rtc(SDA, SCL);

  void setup()

  {

  rtc.begin();

  rtc.setDOW(WEDNESDAY);

  rtc.setTime(12, 0, 0);

  rtc.setDate(1, 1, 2014);

  }

  void loop()

  {

  }

  File data_file;

  DS3231 rtc(SDA, SCL);

  const int lm35_pin=A0;

  int temperature;

  int chip_select_pin=10; //pin 53 for arduino mega 2560

  void setup() {

  Serial.begin(9600);

  rtc.begin();

  pinMode(lm35_pin, INPUT);

  pinMode(chip_select_pin, OUTPUT);

  if (SD.begin())

  {

  } else

  {

  }

  }

  void loop() {

  temperature=analogRead(lm35_pin);

  temperature=(temperature*500)/1023;

  data_file=SD.open("test.txt", FILE_WRITE);

  if (data_file) {

  data_file.print(rtc.getTimeStr());

  }

  else {

  }

  delay(3000);

  }

  首先,我们包含了mini SD卡模块和DS3231时钟模块所需的库文件。 SD卡模块通过SPI通信连接到Arduino,因此我们包含了SPI库。 之后,我们初始化两个变量以便使用库函数。

  File data_file;

  DS3231 rtc(SDA, SCL);

  在设置函数中,我们开始与SD卡模块进行通信。 如果一切正常,Arduino将在串行监视器上打印输出“Initialization Successful. Ready to use“,否则将打印输出”Initialization failed. Check your pin connections or change your SD card“。

  if (SD.begin())

  {

  } 必发88else

  {

  }

  LM35温度传感器以模拟形式输出信号,因此首先需要将该模拟输出转换为温度。 然后我们打开SD卡文件“test.txt”。 如果没有该名称的文件,那么Arduino将会创建它。 打开文件后,Arduino将打印输出时间和温度。

  temperature=analogRead(lm35_pin);

  temperature=(temperature*500)/1023;

  data_file=SD.open("test.txt", FILE_WRITE);

  if (data_file) {

  注意:您要选择的文件名必须为8.3格式。 8.3格式的文件名可以类似“data345.txt”,其中“data345”是8个字符串,“.txt”是3个字符的扩展名。 您不能使用比此格式更长的文件名。 如果您是第一次使用该SD卡,建议在使用SD卡之前进行格式化。

  要在excel中制作一个图表,打开Microsoft excel并转到数据菜单,点击'从文本'按钮并选择SD卡文件。 然后选择分隔符,然后单击下一步,之后选择逗号并完成向导。

  现在,选择所有的数据,然后转到插入菜单,点击'折线图'。 这将会为我们创建出一个图表。

  (原文发表于ASPENCORE旗下EDN姐妹社区面包板博客,参考链接:https://www.mianbaoban.cn/blog/3862649-204089.html)

  必发88


必发88 必发官网 必发88

猜你喜欢

Countdown Restarts Today for SEC Decision on CBOE-VanEck Bitcoin ETF

TheU.S.SecuritiesandExchangeCommission(SEC)maymakeaninitialdecisiononnotone,buttwodiffer

2019-08-09

China No1!CSGO 2019卡托Major再传捷报:Tyloo全新阵容首战获胜

随着xccurate和白菜的交替发挥下,对方无奈落败。接下来的半起局,Vitality仅击杀Tyloo一人,让Tyloo拿到8个赛点。不过第一个赛点局中,Tyloo的A区防守被

2019-06-15

5月5日小葱早报 | 比特币每日链上交易触及16个月高位;纽约州总检察长办公室要求Bitfinex披露Tether交易文件

市场概况非小号行情显示,过去24h,加密货币市场跌多涨少。比特币目前在5800美元上方震荡,现报5823.06美元,过去24h上涨1.43%。以太坊现报163.16美元,24h

2019-05-17

365bet:Grin发布后投资基金参与投资

暴走时评:据coindesk报道,隐私加密货币Grin周二正式启动了其主网,已经获得了来自资金雄厚的投资者的兴趣。PrimitiveVentures创始人DoveyWan表示,

2019-04-10