国产精品tv在线观看,伊人无码高清,爱爱打泡影院,91精品午夜小视频在线观看性色,日本三级黄色网站,国产天堂av手机在线,一级A毛片免费观看

創(chuàng)澤機(jī)器人
CHUANGZE ROBOT
當(dāng)前位置:首頁 > 新聞資訊 > 機(jī)器人開發(fā) > 機(jī)器人直線行走的編程-接口、傳感器的讀數(shù)、地面的灰度閾值

機(jī)器人直線行走的編程-接口、傳感器的讀數(shù)、地面的灰度閾值

來源:機(jī)器人的天空     編輯:創(chuàng)澤   時(shí)間:2026/3/9   主題:其他 [加盟]

將兩個(gè)巡線傳感器分開一 點(diǎn)距離(大于線的寬度)安裝在機(jī)器人的底盤 上,開始巡線的時(shí)候令黑線正好從兩個(gè)巡線傳 感器之間穿過,如圖8-1所示。這樣,如果兩 個(gè)傳感器檢測到都在白色的地板上方,就說明 機(jī)器人在線的上方,可以讓機(jī)器人一直往前 走;如果右邊的傳感器檢測到了黑線,就往右 轉(zhuǎn);如果左邊的傳感器檢測到了黑線就往左 轉(zhuǎn)。若用原來的方法,即使機(jī)器人遇到一根直線,也要走“之”字形前進(jìn),而如果采用剛剛 設(shè)計(jì)的方案,機(jī)器人在巡直線的時(shí)候就完全可以筆直前進(jìn)了,這樣它就可以比“之”字形巡 線法跑得更快了。

當(dāng)使用兩個(gè)傳感器時(shí),在巡直線時(shí)機(jī)器人可以一直前進(jìn)而不用拐彎,這樣比走“之”字形的 軌跡就要平滑得多了。怎樣讓它走得更加平滑呢?很自然地,同學(xué)們就會(huì)想到,能不能再 增加更多的傳感器數(shù)量呢?沒錯(cuò),這是一種很常用的辦法。

如果有4個(gè)巡線傳感器,就可以這么做:假設(shè)把4個(gè)傳感器從右到左分別叫做1號、 2號、3號、4號。如果1號檢測到了黑線,說明機(jī)器人行進(jìn)的方向和黑線之間的角度已經(jīng) 很大了,應(yīng)該馬上向右大幅轉(zhuǎn)動(dòng);否則,如果2號檢測到了黑線,則說明機(jī)器人的行進(jìn)方向 和黑線之間有角度但還不是很大,只需要向右“溫柔”地轉(zhuǎn)彎就可以了。對于3號、4號傳 感器,同學(xué)們可以用類似的方法進(jìn)行分析。這樣我們在控制程序中就可以判斷,根據(jù)不同 的傳感器給出不同的電機(jī)控制信號。用這種方法,機(jī)器人不僅比只有兩個(gè)傳感器時(shí)跑得 更快、更平滑,而且對于突然急轉(zhuǎn)彎的黑線有更好的適應(yīng)性。同學(xué)們會(huì)發(fā)現(xiàn)小機(jī)器人跑得 更加可靠了。

到目前為止,我們已經(jīng)為機(jī)器人編寫過好幾個(gè)小程序了。在每個(gè)程序中都免不了要 和各種數(shù)字打交道,比如所使用的接口、傳感器的讀數(shù)、地面的灰度閾值等。在編寫程序的過程中,也許有的同學(xué)已經(jīng)發(fā)現(xiàn)了很多不方便的地方。

比如說在使用 pinMode 命令為端口規(guī)定方向時(shí)肯定要用到它的編號,然后再用 digitalRead 之類的命令操縱端口時(shí)也要用到同一個(gè)編號。同學(xué)們想一想,如果某天我們 突然要改為使用另一個(gè)端口,那么是不是要一個(gè)一個(gè)地把它的編號改變過去呢?顯然用 這種方式編寫程序修改起來既費(fèi)力又容易出錯(cuò)。

再比如說,有時(shí)我們用analogRead 命令讀到了傳感器當(dāng)前的值,但如果在接下來的 程序里我們還要用到這個(gè)值做比較復(fù)雜的計(jì)算,該怎么辦呢?我們可不想在接下來的算 式中每個(gè)用到這個(gè)值的地方都去調(diào)用一次analogRead 命令,因?yàn)檫@樣做的代價(jià)太大了。 實(shí)際上,在C 語言編程中,只要合理地使用常量和變量就可以很方便地解決上面這 幾個(gè)問題了。

1.變量

變量是什么?顧名思義,變量就是數(shù)值可能發(fā)生變化的量。在程序中,常常需要把一 個(gè)數(shù)據(jù)存儲(chǔ)起來供以后使用,還可能隨時(shí)在程序中更改這個(gè)數(shù)據(jù)的值。這種情況下,就要 用到變量了。變量由數(shù)據(jù)類型、變量名和變量的值組成。

假設(shè)主控板上有一個(gè)溫度傳感器能感知外界溫度?梢栽诔绦蚶锞涂梢月暶饕粋(gè)叫 作溫度(Temperature) 的變量來記錄傳感器的數(shù)值,并且聲明它的類型是整數(shù)型。

int temperature; //int 代表變量類型是整數(shù),變量名為 temperature, 表示溫度

而在后面的程序運(yùn)行過程中,主控板測得當(dāng)前溫度為20℃,在程序中就可以給溫度 變量賦值為20。這時(shí),如果要用它做各種計(jì)算,那么只要用temperature 這個(gè)變量名就可 以代表當(dāng)前的溫度值了。

temperature=20; //將溫度賦值為20℃

2.變量的聲明與賦值

上面的例子中,先聲明了一個(gè)名叫 temperature 的整數(shù)型的變量。然后又將它賦值 為20。我們這么做時(shí),變量的聲明和賦值是分開進(jìn)行的。而在另一種情況下,也可以在 聲明變量的同時(shí)就為它賦值。這時(shí)給變量賦予的值叫作初始值或是默認(rèn)值。比如,我們 認(rèn)為房間內(nèi)大部分情況下溫度是23℃。就可以這樣做:

int temperature=23; //聲明名為temperature 的整型變量,并設(shè)初始值為23

當(dāng)然,在后續(xù)的程序中隨時(shí)可以改變這個(gè)變量的值,將它重新賦值為那時(shí)的溫度值。 這也是我們?yōu)槭裁匆褂米兞康脑颉?

在為變量命名時(shí),可以根據(jù)習(xí)慣使用英文或漢語拼音。但是,要注意的是變量名一般 都要和變量的實(shí)際用途相關(guān)。有的同學(xué)為了省事,喜歡用a0 、b1 之類的簡單字母加上個(gè) 數(shù)字作為變量名。這樣做是很壞的習(xí)慣,你的代碼將會(huì)很難被別人讀懂,甚至不久后你自 己都忘了它們是做什么用的。所以,請同學(xué)們一定要養(yǎng)成良好的命名習(xí)慣。這也是優(yōu)秀 的程序員的標(biāo)志之一。

3.常量

常量就是數(shù)值永遠(yuǎn)不會(huì)發(fā)生變化的量。我們在數(shù)學(xué)課中已經(jīng)接觸過好幾個(gè)大名鼎鼎 的變量,和它相對的自然就是常量了。圓周率π就是一個(gè)大小永遠(yuǎn)不變的量 — — 常量。 在計(jì)算機(jī)程序中,有的數(shù)值是在程序的整個(gè)生命中都不會(huì)被改變的,我們就Z好用常量來 表示它們。常量的聲明很簡單,只要在變量的類型前加上一個(gè) const 就可以了。不過,和 變量不同的一點(diǎn)是,常量在聲明時(shí)一定要給它賦值,這個(gè)值就是它那個(gè)永遠(yuǎn)不變的值。

現(xiàn)在,同學(xué)們可能已經(jīng)想到了,我們在程序中所使用的端口的編號就是典型的應(yīng)該使 用常量來定義的。下面的例子就聲明了一個(gè)整數(shù)類型的常量,用來表示 LED 小燈連接到 了主控板上的3號端口上。

const int ledPort=3; //聲明一個(gè)名為 ledPort 的整數(shù)型常量,并賦值為3

4.數(shù)據(jù)類型

以前所舉的所有例子里,變量和常量都是用來表示整數(shù)的。同學(xué)們一定會(huì)好奇,除了 整數(shù)類型,我們至少還學(xué)習(xí)過小數(shù)啊!比如,如果測得的溫度值是20.5℃,那可怎么辦 呢?現(xiàn)在就來介紹 一 下C 語言中的其他幾種常用數(shù)據(jù)類型

此外,如果在 int 和 char 類型的變量前加上 unsigned 關(guān)鍵字,就代表這個(gè)變量不可 能為負(fù)值。

好了,現(xiàn)在就在一個(gè)實(shí)際例子中,用剛剛學(xué)到的知識定義幾個(gè)不同類型的變量。

假設(shè)我們的程序需要處理學(xué)生的成績,每個(gè)學(xué)生在考試中都得到了一個(gè)百分制的分 數(shù),而這個(gè)分?jǐn)?shù)又可以分為A、B 、C、D4 擋,還可以根據(jù)分?jǐn)?shù)夠不夠60分判斷是否及格。 已知全班同學(xué)的分?jǐn)?shù)后還可以計(jì)算出平均分。那么很可能需要聲明以下幾個(gè)變量:

int score;

boolean isQualified;

char grade;

float averageScore;

//整數(shù)類型變量score 代表學(xué)生的分?jǐn)?shù)

//布爾類型變量isQualified 代表學(xué)生是否及格

//字符類型變量 char 代表學(xué)生的分?jǐn)?shù)等JA,B,C,D //浮點(diǎn)數(shù)類型變量averageScore 代表全班的平均分






智能巡線機(jī)器人的制作:digitalRead 、digitalWrite 、analogRead 、analogWrite、 pinMode 、delay

機(jī)器人傳感器的位置在靠近黑線的左側(cè)或者正好在黑線上;digitalRead 、digitalWrite 、analogRead 、analogWrite、 pinMode 、delay。它們構(gòu)成了Arduino 中最為重要、最為常用的功能

微觸開關(guān)傳感器-很簡單的傳感器,用程序就能很準(zhǔn)確地檢測到它的開閉變化

微觸開關(guān)也只有“開”和“閉” 兩種不同的狀態(tài),把它連接到主控制器,用程序就能很準(zhǔn)確地檢測到它的開閉變化了,只要用 digitalRead 命令就可以很 方便地讀取微觸開關(guān)的值了,這個(gè)命令的用法

為機(jī)器人安上轉(zhuǎn)向燈:連接機(jī)器人,編寫程序,觀察現(xiàn)象

將機(jī)器人、擴(kuò)展板和小燈模塊連接好,將右轉(zhuǎn)向燈連接D5 號口,左轉(zhuǎn)向燈連接D3號口;編寫程序,讓轉(zhuǎn)向燈亮滅的語句,左轉(zhuǎn)向燈熄滅,同時(shí)機(jī)器人向右轉(zhuǎn)彎

簡單機(jī)器人的主控制器與擴(kuò)展板

機(jī)器人的主控制器可以用這些插針和各種傳感器或執(zhí)行器共同工作,用灰色的RJ11 線連接各種傳感器 和執(zhí)行器,而不用擔(dān)心線路連錯(cuò)或連反,連接時(shí)如果聽到“咔嚓”就代表連接成功

機(jī)器人中最為流行的驅(qū)動(dòng)方式-雙輪差速驅(qū)動(dòng)

常見的一種機(jī)器人驅(qū)動(dòng)方式—雙輪差速驅(qū)動(dòng),左輪和右輪以同樣的速率向前轉(zhuǎn)動(dòng),機(jī)器人向正前方前進(jìn);左輪和右輪 以同樣的速率向后轉(zhuǎn)動(dòng),轉(zhuǎn)彎半徑的大小取決于左右兩個(gè)輪子的轉(zhuǎn)動(dòng)速度之差

機(jī)器龜?shù)慕Y(jié)構(gòu)制作材料:底盤,執(zhí)行器,傳感器,中型減速電機(jī),萬向輪,標(biāo)準(zhǔn)舵機(jī)

機(jī)器龜有一個(gè)PWM驅(qū)動(dòng)的活動(dòng) 底盤,底盤上搭載了一個(gè)可旋轉(zhuǎn)的傳感器平臺,機(jī)器人頭部設(shè)置了一個(gè)距離傳感 器,底盤下裝有4個(gè)邊緣傳感器

機(jī)器人的避障功能原理:接觸式傳感器觸發(fā)的“神經(jīng)阻斷”電路

制作靜片使用的材料是端子芯和黃銅管,把一根有彈性的金屬絲套在銅管里做開關(guān)的動(dòng) 片,碰到物體后,金屬絲和銅管內(nèi)壁接觸,電路導(dǎo)通,以用電阻引腳彎個(gè)圓圈做成靜片

4足機(jī)器人的制作材料:微型減速電機(jī),車條,曲別針,熱縮管

電機(jī)的布局建議稍微靠后,給兩條前腿留出多 一點(diǎn)活動(dòng)空間。因?yàn)榍懊嬷谱鞯腃PG 是主-從神經(jīng)元結(jié)構(gòu),前腿帶著后腿走,前腿的動(dòng)作幅度大于后腿。這樣的設(shè)計(jì)可以使機(jī)器人跨越路面上的一些小障礙

機(jī)器人CPG(中樞模式發(fā)生器)的制作材料:74HC240,電阻,洞洞板,20腳PDIP插座,鋰電池,LED

神經(jīng)網(wǎng)絡(luò)中最關(guān)鍵的元件是電阻R3,R3的阻值過小,左、 右兩側(cè)機(jī)體就無法協(xié)調(diào)運(yùn)轉(zhuǎn),機(jī)器人就好像喝醉了一樣。實(shí)際R3的阻值可以選取 1~10MΩ

螞蟻機(jī)器人的制作材料:74HC240,光敏二極管,微型電機(jī),電源端子,插頭尾簧,洞洞板

,74HC240,4個(gè),光敏二極管,2個(gè),0.22μF無極電容,6個(gè),微型電機(jī),2個(gè),1MΩ電阻,6個(gè),1.5MΩ電阻,2個(gè),PC電源端子(母,拆芯),2位,小型壓線端子(拆芯),2位,3mm黃銅管(可選),1小段,RCA插頭尾簧,1個(gè)

3D光電跟蹤頭的制作材料:74HC240,二極管,電容電阻,鋰電池,開關(guān)端子

光電跟蹤頭的感光元件可以使用任何規(guī)格的光敏二極管或紅外線接收二極管;74HC240 在這里作為兩組神經(jīng)元電路使用;74HC245 是小型BEAM 機(jī)器人常用的雙向電機(jī)驅(qū)動(dòng)芯片

2D光電跟蹤頭的構(gòu)造:兩個(gè)光敏二極管, 一 片數(shù)字邏輯集成電路,一個(gè)減速電機(jī)

電機(jī)為機(jī)器人制作中常用的N20 微型減速電機(jī),標(biāo)稱電壓為6V;感光元件串聯(lián)在電源兩端;芯片的第1/19腳為 使能端,實(shí)際使用中要接低電平;端子芯取自工業(yè)連接器里面的接線排座
資料獲取
機(jī)器人開發(fā)
== 資訊 ==
機(jī)器人直線行走的編程-接口、傳感器的讀數(shù)
智能巡線機(jī)器人的制作:digitalRe
OpenClaw 完全使用手冊-所需的硬
智能復(fù)合機(jī)器人的成本構(gòu)成:硬件本體,場景
具身智能復(fù)合移動(dòng)機(jī)器人產(chǎn)業(yè)發(fā)展藍(lán)皮書20
OpenClaw自我研究1.0報(bào)告 by
OpenClaw發(fā)展研究報(bào)告1.0-Th
微觸開關(guān)傳感器-很簡單的傳感器,用程序就
為機(jī)器人安上轉(zhuǎn)向燈:連接機(jī)器人,編寫程序
簡單機(jī)器人的主控制器與擴(kuò)展板
機(jī)器人中最為流行的驅(qū)動(dòng)方式-雙輪差速驅(qū)動(dòng)
機(jī)器人對人類的幫助:代替人類完成體力勞動(dòng)
機(jī)器人的四大組成部分:主控制器,傳感器,
AI 革命進(jìn)入新階段,賦能全場景終端-從
具身智能商業(yè)化元年全洞察-政策密集出臺,
== 機(jī)器人推薦 ==
迎賓講解服務(wù)機(jī)器人

服務(wù)機(jī)器人(迎賓、講解、導(dǎo)診...)

智能消毒機(jī)器人

智能消毒機(jī)器人

機(jī)器人開發(fā)平臺

機(jī)器人開發(fā)平臺


機(jī)器人底盤 Disinfection Robot 消毒機(jī)器人  講解機(jī)器人  迎賓機(jī)器人  移動(dòng)機(jī)器人底盤  商用機(jī)器人  智能垃圾站  智能服務(wù)機(jī)器人  大屏機(jī)器人  霧化消毒機(jī)器人  展廳機(jī)器人  服務(wù)機(jī)器人底盤  具身智能教育機(jī)器人  智能配送機(jī)器人  導(dǎo)覽機(jī)器人 
版權(quán)所有 創(chuàng)澤智能機(jī)器人集團(tuán)股份有限公司 運(yùn)營中心:北京 清華科技園九號樓5層 生產(chǎn)中心:山東日照太原路71號
銷售1:4006-935-088 銷售2:4006-937-088 客服電話: 4008-128-728