Агуулгын хүснэгт:

Роботод зориулсан бампер үүсгэх: 4 алхам
Роботод зориулсан бампер үүсгэх: 4 алхам

Видео: Роботод зориулсан бампер үүсгэх: 4 алхам

Видео: Роботод зориулсан бампер үүсгэх: 4 алхам
Видео: Машинное обучение для разработчиков Java: переход на стек технологий ИИ. 2024, Арваннэгдүгээр
Anonim
Роботод зориулсан бампер үүсгэх
Роботод зориулсан бампер үүсгэх

Миний компьютерийн инженерчлэлийн 11 -р дамжаанд манай роботыг төөрөгдөлд оруулах даалгавар өгсөн. Шулуун, зүүн эсвэл баруун тийш эргэж байгаа эсэхийг хянахын тулд бид бампер хийхийг хүссэн. Ийм байдлаар робот хананд хүрч баруун бамбай руу цохигдвол робот зүүн тийш, зүүн бамбай руу цохигдвол баруун тийш эргэх болно. Үндсэндээ бидний даалгавар бол эргэх боломжийг олгохын тулд түлхэх боломжтой бампер бий болгох явдал байсан бөгөөд гогцоог үргэлжлүүлэн асаахгүйн тулд би буцааж гарах ёстой. Гэсэн хэдий ч бамперыг тохируулахын тулд бамбайгаа ажиллуулахын тулд код, хэлхээ тохируулах шаардлагатай болно. Дараах алхмуудыг дагана уу.

Алхам 1: Хэлхээ

Хэлхээ
Хэлхээ
Хэлхээ
Хэлхээ

Бамперыг ажиллуулахын тулд та роботынхоо дээд талд байрлах самбар дээр хэлхээ үүсгэх ёстой.

(2 бамперт хүрэхийн тулд дээрх зургийг дагана уу)

Шаардлагатай материалууд

  • 2 жижиг LED гэрэл (бамбайгаа ажиллуулахын тулд)
  • 8 утас
  • 2 хүрэн хар шар өнгийн резистор
  • 2 улаан улаан хүрэн резистор

Зарим зүйлийг санаж байх хэрэгтэй

  • Vss бол "газар" бөгөөд энэ нь тэг, Vdd нь 1 -тэй тэнцүү юм
  • Хэлхээ ажиллаж байх үед утга нь ажиллахгүй бол 0 байна
  • Удирдагчийн хавтгай тал нь сөрөг, нөгөө тал нь эерэг байна

Хэлхээний нийтлэг алдаа

  • LED бол буруу арга юм
  • LED, резистор ба утсыг нэг багананд байрлуулаагүй болно
  • Удирдах хэрэгсэл ажиллахаа больсон

Алхам 2: Код

Код:

'{$ STAMP BS2}' {$ PBASIC 2.5}

LBump PIN 11

RBump PIN 10

LMOTOR PIN 15

RMOTOR PIN 14

RFast CON 650

LFast CON 850

RSlow CON 700

LSLOW CON 800

MStop CON 750

RFastRev CON 850

LFastRev CON 650

RSlowRev CON 800

LSlowRev CON 700

MLoopC VAR Word 'For.. Дараагийн 65000 хүртэл хэлбэлздэг

ХИЙ

GOSUB Forwardfast 'урагшаа

IF IN10 = 0 THEN 'бол 10 оролтын хоёр утас дарагдсан бол зүүн тийш эргэ

GOSUB TurnLeft90

ELSEIF IN11 = 0 ДАРАА 'хэрэв 11 оролтын хоёр утас дарагдсан бол баруун тийш эргэ

GOSUB TurnRight90

ENDIF

Гогцоо

TurnRight90:

90 градусыг баруун тийш эргүүлэх дэд журам

'**********************************************************

ӨНДӨР 1

Бага 0

MLoopC -ийн хувьд = 1 -ээс 22 хүртэл

PULSOUT LMOTOR, LfastRev нэг лугшилтыг урагшлуулна

PULSOUT RMOTOR, Rfast нь тээглүүр ба тогтмол ашиглан

Түр зогсоох 20

NEXT импульсийн өмнө '20mS нь роботыг хөдөлгөх боломжийг олгодог

ДАРААЧИЙН

БУЦАХ

'*********************************************************

TurnLeft90:

90 градусыг баруун тийш эргүүлэх дэд журам

'********************************************************

ӨНДӨР 0

Бага 1

MLoopC -ийн хувьд = 1 -ээс 22 хүртэл

PULSOUT LMOTOR, Лфаст нэг лугшилтыг урагшлуулна

PULSOUT RMOTOR, RfastRev нь тээглүүр ба тогтмолуудыг ашигладаг

PAUSE 20 '20mS нь роботыг дараагийн импульсийн өмнө хөдөлгөх боломжийг олгодог

ДАРААЧИЙН

БУЦАХ

'***********************************************************

ForwardFast:

Роботыг нэг квадрат хурдан урагшлуулах дэд журам

'**********************************************************

MLoopC -ийн хувьд = 1 -ээс 70 хүртэл

LMOTOR PULSOUT, LFast PULSOUT

RMOTOR, RFast

Түр зогсоох 20

ДАРААЧИЙН

БУЦАХ

Товч танилцуулга

Энэхүү кодын зорилго нь роботыг баруун утас (бампер) дарахад зүүн тийш эргүүлэх, зүүн утас (бампер) дарагдсан үед баруун тийш эргүүлэх програмчлах явдал юм.

Код нь юу гэсэн үг вэ?

Энэ асуултанд хариулахаасаа өмнө та энэ програмд ашигласан зарим кодууд ямар утгатай болохыг мэдэх хэрэгтэй.

GOSUB - дэд програм нь дэд програм руу шилжих гэсэн үг юм (дэд програмыг таны кодонд тодорхойлох ёстой)

ENDIF - IF командын олон мөрийг дуусгахад ашигладаг

_

кодын цаад утга учрыг тайлбарлаж байна ….

DOGOSUB Forwardfast

- Роботыг асаахад шууд урагшаа явахыг хэлж байна

Хэрэв IN10 = 0 бол

GOSUB TurnLeft90

- 10 -р оролтын хоёр утас (баруун бамбай) хүрвэл робот 90 өнцгөөр зүүн тийш эргэх болно гэж хэлж байна.

ELSEIF

IN11 = 0 Дараа нь GOSUB TurnRight90

- Хэрэв оролт 11 (зүүн бамбай) дээрх хоёр утас хүрвэл робот 90 өнцгөөр баруун тийш эргэх болно гэж хэлж байна.

TurnRight90: 90 градусыг баруун тийш эргүүлэх дэд журам

'**********************************************************

ӨНДӨР 1

Бага 0

MLoopC -ийн хувьд = 1 -ээс 22 хүртэл

PULSOUT LMOTOR, LfastRev

PULSOUT RMOTOR, Rfast

Түр зогсоох 20

Дараагийн буцах '********************************************* **********

- Энэ бол дэд програмын жишээ бөгөөд та ижил урт кодыг дахин дахин давтах шаардлагагүй болно. ингэснээр таны код илүү цэвэр харагдаж, илүү нийлмэл болно.

- өндөр 1 / бага тэг гэдэг нь робот баруун тийш эргэхэд (зүүн утаснууд хүрэхэд) лед асдаг тул бүх зүйл ажиллаж байгааг мэдэж болно гэсэн үг юм.

Алхам 3: Бампер (шаардлагатай материал)

Бампер (шаардлагатай материал)
Бампер (шаардлагатай материал)

Бамбай хийхийн тулд танд хэрэгтэй болно …

- Үндсэн бүтцэд зориулсан 4 ширхэг мод, бамперыг робот дээр суурилуулахын тулд 2 ширхэг мод

- 4 ширхэг хөвөн

- 4 ширхэг цаасан клип

- тиймээс хөнгөн цагаан тугалган цаас

- 4 утас (талбарт холбохын тулд хэлхээний талаар 1 -р алхамд тайлбарласан болно)

- халуун цавуу буу, цавуу мод

- маск хийх соронзон хальс

Алхам 4: Бампер угсрах

Бампер угсрах
Бампер угсрах
Бампер угсрах
Бампер угсрах
Бампер угсрах
Бампер угсрах
Бампер угсрах
Бампер угсрах

Нэг бампер хийхийн тулд 2 ширхэг савх аваад дугуйрсан үзүүрүүдийг хайчилж ав (1 -р зурагт тэмдэглэгдсэн шиг). Эдгээр модны савх нь таны бамбайны дээд ба доод үүргийг гүйцэтгэх болно. Утаснууд шууд хүрч, хүрэхгүй байхын тулд хөвөн хийх шаардлагатай. Хөвөн аваад 2 жижиг дөрвөлжинг хайчилж ав (дээр үзүүлсэн хоёр дахь зураг шиг). Дараа нь халуун цавуу ашиглан 1 ширхэг савх аваад зүүн талд нь 1 хөвөн дөрвөлжин, баруун талд нэг хөвөн нааж (3 -р зургийг лавлагаа болгон ашиглана уу). Дараа нь 1 утас аваад утасны үзүүрийн нэг үзүүрийг хөнгөн цагаан тугалган цаасаар боож өгнө. Утасыг модны дунд байрлуулж, цаасан хавчаараар бэхлээрэй. Энэ алхамыг хоёрдахь утас, цаасан савхаар давтана. Попсиклийг хөвөнгүй хөвөнтэй цавуугаар наана (дээрх 3 -р зурагт үзүүлсэн шиг). Одоо таны анхны бампер дууссан байна

Хоёр дахь бамбай хийхийн тулд энэ бүх үйл явцыг хоёр дахь удаагаа давт.

Бамперыг робот дээр нэмэхийн тулд нэг ширхэг савх аваад бамбайны ёроолд наа. Зүүн бамбайгаа зүүн тийш, баруун бамбайгаа баруун тийш нь өнцгөөр эргүүлнэ. Би бамперыг маск туузаар наасан. (4 -р зураг бол робот дээр хавсаргасан бамперууд юм).

Зөвлөмж болгож буй: