91在线观看视频-91在线观看视频-91在线观看免费视频-91在线观看免费-欧美第二页-欧美第1页

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

九聯科技Unionpi Tiger開發板體驗:使用串口調試土壤溫濕度傳感器

電子發燒友開源社區 ? 來源:未知 ? 2022-12-08 09:10 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1、溫濕度傳感器使用概述

土壤溫濕度傳感器是將土壤水分和土壤溫度傳感器集中于一體,具有攜帶方便,密封,高精度等優點,是土壤墑情,土壤溫度測量的理想選擇。本文采用德國 Heraeus 公司進口 A 級 ST-1-PT1000傳感器通過RS485轉接板轉換成TTL信號接在九聯開發板的TTL 接口(ttyS01),從硬件上來講完全可以接在開發板的485接口,但是目前切換USB還有點問題,所以先使用轉接板后期再直接連接到485端口

1.1 傳感器RS485串口設置

標準 Modbus-RTU 協議,波特率:9600;校驗位:無;數據位:8;停止位:1

1.2 溫濕度數據轉換

土壤溫濕度傳感器在土壤飽和含水率范圍內具有良好的線性特征,以下是典型的標定公式,用戶可以參考使用,如果要獲得更高精度,需進行二次標定。

d8b56742-7694-11ed-8abf-dac502259ad0.png

1.3 溫濕度串口數據協議

1.3.1 修改傳感器地址

d8dd4db6-7694-11ed-8abf-dac502259ad0.png

若傳感器接收正確,數據按原路返回。

備注:如果忘記傳感器的原地址,可以使用廣播地址0XFE代替,使用0XFE時主機只能接一個從機,且返回地址仍為原地址,可以作為地址查詢的方法。

1.3.2 查詢傳感器數據

查詢傳感器(地址為1)的數據(土壤溫度,土壤濕度),主機→從機

d8f98b8e-7694-11ed-8abf-dac502259ad0.png

若傳感器接收正確,返回以下數據,從機→主機

d93249e2-7694-11ed-8abf-dac502259ad0.png

PC機測試

實驗之前可以先找個USB 轉串口,先在PC機上做一些簡單的協議測試,如下是使用ModeBusRTU調試工具查詢傳感器數據:

d952f868-7694-11ed-8abf-dac502259ad0.png

2、九聯開發板和傳感器的硬件連接

硬件清單:

  1. 九聯開發板

  2. 485 溫濕度傳感器

  3. 12V傳感器供電電源

  4. 485轉TTL 小板子

  5. 杜邦線若干

溫度傳感器-> 485轉TTL小板子 -> 九聯開發板TTL 接口(ttySL0)

d97b632a-7694-11ed-8abf-dac502259ad0.png

3、DEMO流程

本次實驗包括了源碼文件修改,編譯,下載,上板測試。

3.1 源碼文件解析及修改

移植倉庫中的UART代碼到開發板中,源代碼倉庫如下:

https://gitee.com/openharmony/vendor_unionman/tree/master/unionpi_tiger/sample/hardware/gpio

首先把uart的整個文件夾拷貝到某個目錄下,我這里復制都openhamony/vendor/uniopi/unionpi_tiger/sample/hardware/下面,并在/openharmony/device/unionpi/a311d/BUILD.gn文件中增加該文件的路徑。如下:

  • 在main.c文件中根據自己的需要增加代碼,我這里做的測試是給傳感器發送一個查詢數據的指令,然后把傳感器返回的數據打印出來。

3.1.1 打開串口

在這里可以定義使用哪個串口

`#define UART_TTL_NAME "/dev/ttyS1"`

(左右移動查看全部內容)

打開串口

char *uart_dev = UART_TTL_NAME;
fd = open(uart_dev, O_RDWR);

(左右移動查看全部內容)

3.1.2 初始化串口設置

ret = uart_init(fd, 9600L);`
// 設置波特率
int uart_init(int fd, int uartBaud)
{
  set_baud(fd, conver_baudrate(uartBaud));
  // uart param /
  if (set_params(fd, 8L, 1, 'n')) {
    printf("Set uart parameters fail.
");
    return -1;
  }
  return 0;
}

(左右移動查看全部內容)

3.1.3 讀寫串口

串口的讀寫與普通文件一樣,使用read,write函數
read(fd, buf ,8);
write(fd,buff,8);

(左右移動查看全部內容)

main 修改demo

以下給出一個溫濕度模塊數據查詢和顯示的例子:

#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include "serial_uart.h"


static int fd;


// 從串口讀的線程
void *_serial_input_task(void)
{
  int i = 0;
  int j = 0;
  int ret = -1;
  int buf = 0;
  int recv[4] = {0};
  char cmd_buf1[] = { 0x01, 0x03, 0x00, 0x00, 0x00, 0x02, 0xC4, 0x0B};


  printf("temperature Sensor Ready!
");
  while (1) {
    //------------向urat發送數據查詢數據-------------------


    for (i = 0; i < 8; i++)
    printf("%#X ", cmd_buf1[i]);


    count = write(fd, cmd_buf1, 9);
    if (count != 9) {
    printf("send failed
");
    return -1;
    }
    //------------等待傳感器返回數據-------------------
    for (i = 0; i < 9 ; i++) {
      ret = read(fd, &buf, 1);
      //ret = data_proce(recv);
      printf("%#X ", ret);
    if (ret == -1) {
      printf("data process error
");
      exit(0);
    }
  }
}


int main(int argc, char **argv)
{
  char *uart_dev = UART_TTL_NAME;
  int ret = -1;


  fd = open(uart_dev, O_RDWR);
  if (fd == -1) {
    printf("open file error
");
    return ERR;
  }
  ret = uart_init(fd, 9600L);
  if (ret == -1) {
    printf("uart init error
");
    return ERR;
  }


  // 創建線程 一直執行讀操作
  pthread_t pid_t;
  pthread_create(&pid_t, NULL, (void *)_serial_input_task, 0);


  while (1) {}
  close(fd);


  return 0;
}

(左右移動查看全部內容)

3.2 編譯,下載,測試

開發板上電之后串口進入/bin 目錄下 執行./uart_test

d9b43812-7694-11ed-8abf-dac502259ad0.png

程序啟動之后會發送一串查詢指令給傳感器,并將接收到的數據打印出來,并從數據包中解析出溫度和濕度的讀值。

  • 這是接到到的數據包
    0X10X30X400XE400X1F0XFB0XCC

  • 這是溫度值

    temprature now is0XE4

  • 這是濕度值

    humidity now is 0X1F

總結

本文主要使用了串口來查詢溫濕度傳感器數據,主要包含的串口的讀寫功能測試,以及溫度傳感器的數據包解析。源碼編譯的要點基本再GPIO編譯測試里面都有提到。另外還有個問題,串口原來的計劃是使用485接口來調試,485串口需要切換到USB2.0,根據倉庫里的說明并沒有操作成功,這部分后面還需要再研究一下。

計劃接下來的工作是把485傳感器聯動GPIO信號。GPIO外接繼電器驅動用電設備。當溫濕度超過設置的閾值觸發用電設備工作。

更多熱點文章閱讀

  • 最新爆料!RK3588 適配 OpenHarmony 的新進展
  • 移植speexdsp到OpenHarmony標準系統②
  • 移植speexdsp到OpenHarmony標準系統③
  • 移植speexdsp到OpenHarmony標準系統④
  • 證通電子人臉支付終端設備ZT8623通過OpenHarmony兼容性測評

提示:本文由電子發燒友社區發布,轉載請注明以上來源。如需社區合作及入群交流,請添加微信EEFans0806,或者發郵箱liuyong@huaqiu.com。


原文標題:九聯科技Unionpi Tiger開發板體驗:使用串口調試土壤溫濕度傳感器

文章出處:【微信公眾號:電子發燒友開源社區】歡迎添加關注!文章轉載請注明出處。


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 電子發燒友
    +關注

    關注

    33

    文章

    566

    瀏覽量

    33529
  • 開源社區
    +關注

    關注

    0

    文章

    95

    瀏覽量

    630

原文標題:九聯科技Unionpi Tiger開發板體驗:使用串口調試土壤溫濕度傳感器

文章出處:【微信號:HarmonyOS_Community,微信公眾號:電子發燒友開源社區】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    什么是溫濕度傳感器的水合?

    溫濕度傳感器需要進行水合處理(Hydration),主要是為了優化傳感器的性能、穩定性和長期可靠性。以下是具體原因和作用的詳細解釋:1.穩定濕度敏感材料電容式
    的頭像 發表于 07-11 12:10 ?120次閱讀
    什么是<b class='flag-5'>溫濕度</b><b class='flag-5'>傳感器</b>的水合?

    零知開源——STM32F407VET6驅動SHT41溫濕度傳感器完整教程

    ),軟件使用零知IDE3.8.0和Adafruit_SHT4x庫。代碼包含傳感器初始化、數據讀取和CRC校驗功能,每秒輸出溫濕度數據至串口。教程詳細說明了硬件接線、軟件配置及常見問題解決方法,幫助
    的頭像 發表于 07-09 18:53 ?156次閱讀
    零知開源——STM32F407VET6驅動SHT41<b class='flag-5'>溫濕度</b><b class='flag-5'>傳感器</b>完整教程

    常見的溫濕度傳感器類型?

    溫濕度傳感器是一種用于測量環境溫度和濕度的設備,廣泛應用于工業、農業、氣象等領域。以下是幾種常見的溫濕度傳感器類型及其優缺點: 電容式
    發表于 06-24 09:24

    溫濕度傳感器:核心原理與跨領域應用解析

    一、溫濕度傳感器的技術演進與核心價值 溫濕度傳感器是一種通過物理或化學機制實時監測環境溫濕度參數的電子設備。在物聯網(IoT)與智慧化轉型的
    的頭像 發表于 03-27 11:21 ?765次閱讀
    <b class='flag-5'>溫濕度</b><b class='flag-5'>傳感器</b>:核心原理與跨領域應用解析

    溫濕度傳感器:生活中的“小氣候專家”

    你有沒有想過,為什么家里的空調總能自動調節到最舒適的溫度和濕度?或者,為什么博物館里的珍貴文物能在恒定的環境中保存完好?這一切的背后,都離不開一個默默無聞的“小氣候專家”——溫濕度傳感器。 今天
    的頭像 發表于 02-27 16:36 ?498次閱讀

    一款電容型高頻介電常數測量、非接觸式感知的低成本土壤溫濕度傳感器-MSE

    低成本土壤溫濕度傳感器 - MSE(Minyuan Soil Economical)是一款電容型高頻介電常數測量、非接觸式感知的智能傳感器,適用于
    的頭像 發表于 02-14 09:41 ?400次閱讀
    一款電容型高頻介電常數測量、非接觸式感知的低成本<b class='flag-5'>土壤</b><b class='flag-5'>溫濕度</b><b class='flag-5'>傳感器</b>-MSE

    多功能土壤監測傳感器:同步測量溫濕度、鹽分與電導率

    隨著農業現代化的發展和對土壤環境質量的日益重視,準確監測土壤溫濕度、鹽分以及電導率等關鍵參數對于科學種植、資源管理和環境保護至關重要。多功能土壤監測
    的頭像 發表于 01-23 11:09 ?433次閱讀

    大棚溫濕度自動監控系統

    、遮陽簾等,以保持大棚內的適宜生長環境。 組成及功能 1.監測系統:利用空氣溫濕度傳感器、土壤溫濕度傳感器、光照強度
    的頭像 發表于 12-31 16:58 ?705次閱讀

    溫濕度控制的功能和應用

    溫濕度控制在電阻柜中的應用主要涉及以下幾個方面: 溫濕度控制的功能 檢測與控制:溫濕度控制
    的頭像 發表于 11-07 15:08 ?797次閱讀

    土壤溫濕度一體監測傳感器

    土壤溫濕度傳感器是一款高精度、高靈敏度的測量土壤溫度、濕度傳感器。測量
    的頭像 發表于 10-29 15:21 ?440次閱讀

    溫濕度傳感器種類及原理的優劣分析

    溫濕度傳感器是一種能夠感知并測量環境中溫度和濕度變化的設備,它們在環境監測、氣象觀測、農業、工業生產、智能家居等多個領域發揮著重要作用。下面將對溫濕度
    的頭像 發表于 10-21 15:05 ?2610次閱讀

    溫濕度傳感器是什么類型的傳感器

    溫濕度傳感器是一種能夠實時監測和記錄環境中溫度和濕度變化的設備或裝置。這類傳感器廣泛應用于環境監測、氣象觀測、農業、工業生產、倉儲管理、智能家居、醫療健康等多個領域,為相關領域的研究、
    的頭像 發表于 10-21 14:53 ?1574次閱讀

    車載溫濕度傳感器有什么功能

    在現代化物流體系中,尤其是針對需要嚴格溫控的冷鏈運輸領域,車載溫濕度傳感器成為了重要的智能設備。車載溫濕度傳感器以其高精度測量、智能化報警、靈活供電及便捷管理等特點,為貨物安全運輸提供
    的頭像 發表于 10-10 13:23 ?579次閱讀

    溫濕度傳感器怎么調試

    溫濕度傳感器是一種廣泛應用于工業、農業、氣象、科研等領域的傳感器,用于測量環境的溫度和濕度。在實際應用中,溫濕度
    的頭像 發表于 08-19 15:04 ?2361次閱讀

    溫濕度傳感器技術參數有哪些

    溫濕度傳感器是一種用于測量環境溫度和濕度傳感器。它們廣泛應用于氣象、農業、工業、醫療、智能家居等領域。本文將介紹溫濕度
    的頭像 發表于 08-19 15:03 ?2887次閱讀
    主站蜘蛛池模板: 日本吻胸抓胸激烈视频网站 | 国产伦精品一区二区 | 色天使在线播放 | 中文字幕一区二区三区精彩视频 | 成年网站在线看 | 国产日本在线播放 | 夜色伊人 | 草草影院私人免费入口 | 一级片免费在线播放 | 爱爱网站免费 | 97人人看 | 高清一区二区 | 久久伊人精品青青草原高清 | 国语自产免费精品视频一区二区 | 特黄一级 | 女人被两根一起进3p在线观看 | 人人骚| 综合涩| 狠狠色狠狠色综合日日不卡 | 特级黄一级播放 | 久草老司机 | 亚洲无色 | 国产午夜爽爽窝窝在线观看 | 2021天天操 | 黑色丝袜美美女被躁视频 | 久久国产精品免费专区 | 插插插叉叉叉 | 国产婷婷 | 91精品久久久久含羞草 | 欧美视频亚洲色图 | 亚洲一区二区三区首页 | 伊人手机在线观看 | 国产在线精品美女观看 | 天天干天天拍天天操 | 国产婷婷| 国产精品免费拍拍1000部 | 国产精品秒播无毒不卡 | 成人午夜大片免费视频77777 | 四虎一影院区永久精品 | 色婷婷综合和线在线 | 国产精品理论 |