3.1 PC未檢測到Arduino UNO。
Arduino UNO需要安裝一個(gè)驅(qū)動(dòng)程序來通過USB端口進(jìn)行通信。
3.2 PC上的無效設(shè)置錯(cuò)誤(彈出報(bào)告“設(shè)置失敗”)。
可能原因:
針腳連接故障。
3.3無模擬輸出(保持0V)。
檢查導(dǎo)線連接并確保正在為傳感器通電。
可能的原因:
電源、接地或輸出連接位置錯(cuò)誤。
電源關(guān)閉或故障。
3.4模擬輸出保持在0.5V。
可能原因:
可能是傳感器故障。
o檢查傳感器方向(見圖3)。
o如果出錯(cuò),模擬輸出將保持在0.49-0.5 V。
o數(shù)字輸出將保持在基線上(0計(jì)數(shù))。
第17頁
4示例用例
第18頁
4.1 PC和Arduino示例
Arduino UNO板可用于實(shí)現(xiàn)SingleTact的USB串行接口。
Arduino應(yīng)用程序(源代碼)和相關(guān)的基于.NET的PC DAQ GUI應(yīng)用程序(Windows可執(zhí)行文件和源代碼)的一旦使用SingleTact固件對Arduino板進(jìn)行編程(請參閱使用SingleTact編程Arduino UNO示例),就可以運(yùn)行PC應(yīng)用程序以直觀地觀察傳感器結(jié)果。
由于Arduino代碼存儲(chǔ)在閃存中,編程(或Arduino術(shù)語中的“上傳”)只需為新板執(zhí)行一次。
圖9 Arduino和SingleTact組件
注意:USB通信可能需要從Arduino軟件包安裝額外的驅(qū)動(dòng)程序。看到了嗎第19頁
圖10 SingleTact和Arduino-UNO連接
要運(yùn)行Windows GUI應(yīng)用程序:
打開PCExecutable文件夾。
運(yùn)行SingleTact Demo.exe啟動(dòng)演示應(yīng)用程序。
圖11 PC數(shù)據(jù)采集軟件演示
PC應(yīng)用程序可用于更改傳感器的I2C地址和修改其輸出比例。有關(guān)這些設(shè)置的更多信息,請參閱I2C接口部分。
連接
無連接
Arduino UNO引腳A4
無連接
Arduino UNO接地引腳
1
4
三
2
8
5
6
7
連接
無連接
Arduino UNO針腳A5
無連接
Arduino UNO 5V引腳
PIN碼
*注:參考增益將根據(jù)傳感器尺寸自動(dòng)變化。
第20頁
4.2使用SingleTact示例編程Arduino UNO
此過程概述了如何使用SingleTact示例固件編程Arduino UNO。
1.從以下位置下載并安裝Arduino軟件2.從以下位置下載Arduino固件(例如ArduinoInterface3.使用提供的USB電纜將Arduino連接到電腦。
4.打開Arduino IDE軟件:
圖12 Arduino-PC連接
注意:USB通信可能需要從Arduino軟件包安裝額外的驅(qū)動(dòng)程序。
按照分步說明進(jìn)行操作。
1.轉(zhuǎn)到文件--->打開并打開“SingleTactDemo.ino”
2.轉(zhuǎn)到Sketch--->Include Library--->Add.zip Library并選擇“Timer1.zip”
3.轉(zhuǎn)到草圖--->驗(yàn)證/編譯。
4.進(jìn)入素描--->上傳*。
*注意:如果上傳時(shí)收到錯(cuò)誤,請確保在“工具”->Port下選擇Arduino。
聯(lián)合國組織
USB接口(Arduino Uno)USB電纜
第21頁
圖13 Arduino集成開發(fā)環(huán)境
圖14編譯和上傳SingleTactDemo.ino文件
第22頁
4.3 Arduino演示大綱
本節(jié)中的圖表概述了Arduino演示功能,如中所述
上一節(jié)。在這種情況下,PC到Arduino接口被設(shè)置為鏡像I2C接口,
保持Arduino代碼盡可能簡單。
圖15 Arduino示例-通信架構(gòu)
圖16 Arduino應(yīng)用程序流程
PC 1 Arduino Uno N SingleTacts公司
請求數(shù)據(jù)(I2C)
發(fā)送傳感器
數(shù)據(jù)
將新數(shù)據(jù)發(fā)送到
個(gè)人計(jì)算機(jī)
如果是新數(shù)據(jù)(比較
itr)-更新圖表
重復(fù)重復(fù)
請求數(shù)據(jù)
(USB/UART)
掃描
傳感器*
重復(fù)
換乘
輸出
緩沖器
和
時(shí)間戳
p
閱讀
輸出
緩沖器
*掃描周期為
異步
回路
中繼命令
I2C以上
指揮需要
I2C結(jié)果?
將結(jié)果/確認(rèn)發(fā)送到
個(gè)人計(jì)算機(jī)
重讀結(jié)果
I2C
Y
Parse命令
小包裹
Y
時(shí)間戳
讀數(shù)*1
N
新建
命令?
N
(*1注:Arduino含有晶體
所以它能夠產(chǎn)生更大的
比SingleTact更準(zhǔn)確的時(shí)間戳
接口板。)
第23頁
在主機(jī)上,Arduino顯示為虛擬RS-232串行設(shè)備。使用串行API(如.NET中提供的API)將數(shù)據(jù)發(fā)送到Arduino或從Arduino發(fā)送數(shù)據(jù)。
Arduino使用Arduino的晶體控制振蕩器計(jì)算每個(gè)數(shù)據(jù)包的時(shí)間戳。這可以用作每個(gè)傳感器的時(shí)間。
這些串行命令反映了原始I2C命令(如圖17中的藍(lán)色所示) |