Мазмұны:

TinyLiDAR Scratch -те қолдануға бола ма?: 3 қадам
TinyLiDAR Scratch -те қолдануға бола ма?: 3 қадам

Бейне: TinyLiDAR Scratch -те қолдануға бола ма?: 3 қадам

Бейне: TinyLiDAR Scratch -те қолдануға бола ма?: 3 қадам
Бейне: Programmēšanas vide jebkuram skolēnam - Scratch, ievads un 1. programmiņa no IG 2024, Қараша
Anonim
TinyLiDAR бағдарламасын… Scratch бағдарламасында қолдануға бола ма?
TinyLiDAR бағдарламасын… Scratch бағдарламасында қолдануға бола ма?

Бізге tinyLiDAR олардың арнайы есептеу платформасында жұмыс жасайтынын сұрау үшін кейде сұраулар түседі. TinyLiDAR Arduino UNO үшін қарапайым LiDAR сенсоры ретінде жасалғанына қарамастан, оны Raspberry Pi сияқты басқа платформаларда қолдануға еш кедергі жоқ (мұнда алдыңғы нұсқаулықта көрсетілгендей). Яғни, егер платформада I2C шинасы болса және I2C спецификациясының сағатты созу мүмкіндігін қолдайтын болса. Сонымен - егер сіздің тақта тіпті I2C қолдамаса ше? - сағаттардың созылуына мән бермеңіз … Бұл қиын сценарий болар еді, бірақ іс жүзінде ол «Scratch» деп аталатын өте танымал визуалды бағдарламалау тілінде бар.

Google, егер сіз бұл туралы бұрын естімеген болсаңыз, бірақ қысқаша айтқанда, бұл кез келген адам үшін өз ойларын бағдарламалау саласына айналдыратын тамаша тіл. Scratch MIT Media Lab -мен жасалған және қазір 16 жылдан астам уақыт бойы жұмыс істейді. Бұл бүкіл әлем бойынша балаларды кодтауға үйрететін тіл. Кез келген адам оны ақысыз пайдалана алады - бұл әдетте жұмыс үстелінде веб -браузерде жұмыс істейді. Қаласаңыз, мұнда тексеріңіз.

TL; DR нұсқасы

ИӘ! TinyLiDAR f/w 1.3.9 нұсқасында «Ультрадыбыстық эмуляция режимі» деп аталатын жаңа функциямен

1 -қадам: Нені сызып тастау керек?

Табиғатта Scratch -тың көптеген дәмі бар. Робототехника энтузиастары ScratchGPIO сияқты GPIO -ға бағытталған нұсқаларды немесе ScratchX сияқты басқа да модернизацияланған нұсқаларды қолданады, олар кез келген «эксперименттік жабдықты» қолдау үшін жасалуы мүмкін. Мұның бәрі озық пайдаланушылар үшін өте жақсы, бірақ әдепкі бойынша pi -де орнатылған негізгі нұсқалар біздің нұсқаулыққа айналады, өйткені оларда шектеулі аппараттық мүмкіндіктер бар.

Pi's Raspbian Stretch Desktop алдын ала орнатылған Scratch екі нұсқасымен келеді. Атап айтқанда, «Scratch» және «Scratch 2». Біз GPIO серверінің мүмкіндігін пайдалану үшін «Scratch 1.4 (NuScratch)» атауын қолданамыз және оны «офлайн» режимінде қолданамыз.

Ресми pi жұмыс үстелінің суретін мына жерден жүктей аласыз.

Қандай да бір себеппен, Scratch жасаушылары Lego және т.б. сияқты ірі компаниялардың ең кең тараған сенсорларының бірнешеуін ғана қолдауға шешім қабылдады. Бір қызығы, олар HC-SR04 қолдауын қосуды шешті. Бұл, әрине, ультрадыбыстық қашықтық сенсоры, ол импульстің енін өлшейтін қашықтыққа пропорционалды түрде шығарады.

Өлшеу дәлдігі ауа температурасына, ылғалдылыққа және мақсатты материалға байланысты мұнда, мұнда және мұнда аздап өзгеруі мүмкін. Жалпы алғанда, кез келген платформа бұл құрылғының импульстік енін өлшей алады.

2 -қадам: Жаңа функция

Жаңа функция
Жаңа функция

Дәл микросекундтық импульстарды шығару tinyLiDAR-де біз үшін қиындық тудырмайды, өйткені бізде борттық 32 биттік микрофонның жоғары ажыратымдылығы бар аппараттық таймерлері бар. tinyLiDAR әрқашан температураны автоматты түрде калибрлейді, себебі ол жұмыс істейді, сондықтан жұмыс ортасы үшін қосымша реттеу қажет емес.

Қанекей мынаны істейік

Жарайды - біз tinyLiDAR -ге (ультрадыбыстық эмуляция режимі) жаңа функция қосуға болады (1.3.9 микробағдарламасы бойынша). Сіз оған жаңартылған tinyLiDAR GUI терминалындағы «u» пәрменін пайдалану арқылы қол жеткізе аласыз.

Оны қолдану тұрақты емес жадтағы параметрлерді өзгертеді, осылайша ол ажыратылғаннан кейін де tinyLiDAR-ды жалпы ультрадыбыстық сенсорға ұқсайды. Қалпына келтіру түймесін басып, «az» пәрменін беру арқылы оны қалыпты I2C режиміне өзгертуге болады. Қосымша мәліметтер пайдаланушы нұсқаулығында.

Өмірді жеңілдету үшін біз tinyLiDAR сенсорын веб -сайтымыздан осы жаңа ультрадыбыстық эмуляция режиміне алдын ала орнатылған етіп жасаймыз. Тек «-u» нұсқасына тапсырыс беріңіз.

Қараңызшы, Мама жоқ

Дәнекерлеудің қажеті жоқ, сонымен қатар нан тақтасы қажет емес, өйткені «Grove to Female 4pin» кабельдері тікелей Raspberry pi тақырып түйреуіштеріне қосылады. Іске қосқыш - сары сым, ал жаңғырық - ақ сым. Қара мен қызыл, әрине, билікке арналған. Мәліметтер алу үшін жоғарыдағы негізгі суретті қараңыз.

Btw, біз бір қадам алға жылжып, сары түйреуішті PING сияқты ұстауға мәжбүрледік))) триггер мен жаңғырық сигналдары үшін бір сымды қолданатын сенсор.

Осының арқасында сіз енді tinyLiDAR көмегімен өлшеуді кез келген кодты өзгертусіз Arduino IDE -мен жеткізілетін әдепкі «PING» ультрадыбыстық эскизін қолдана аласыз! Сіз оны кідіріссіз көре аласыз.

Әрине, сіз «u» пәрменін таңдамас бұрын LiDAR өлшеуінің жоғары дәлдігі, ұзақ қашықтық және т.б сияқты параметрлерді орната аласыз, содан кейін ол жоғарыдағы диаграммада көрсетілген триггердің түйреуішінің түсуін көрген сайын сол өлшемдерді қабылдайды.

Қауіпті, Уилл Робинсон

Назар аударыңыз, SR04 ультрадыбыстық сенсорына +5в қуат көзінің зақымдалуына жол бермеу үшін кейбір резистор қажет. Бірақ tinyLiDAR +3,3 вольттан жұмыс істейтіндіктен, кез келген резистордың pi -мен жұмыс істеуінің қажеті жоқ:)

3 -қадам: оны кодтау

Оны кодтау
Оны кодтау
Оны кодтау
Оны кодтау

Сонымен, tinyLiDAR Scratch -те жұмыс істеуі үшін бізге қажет код қандай?

Сұрағаныңызға қуаныштымын!

Бұл жоғарыдағы суреттерде көрсетілгендей бірнеше қарапайым тарату блоктарын апару ғана.

GPIO түйреуіштерін қосу үшін біз «эфирлік gpioserveron» шығара аламыз, содан кейін триггерлік түйреуішті конфигурациялау үшін біз «stream config16out» шығарамыз. Содан кейін біз «таратылым config26in» арқылы жаңғырық түйінін конфигурациялай аламыз, содан кейін өлшеуді «ultrasonictrigger16echo26 тарату» арқылы бастаймыз. Бұл өлшеуді шамамен 140 мс жиілікте жүргізуге мүмкіндік береді. Сіз «ультрадыбыстық қашықтық сенсорының мәні» сенсорлық блогының көмегімен өлшенген деректерді оқи аласыз.

Әзірге бұл болды, оқығаныңызға рахмет және біз «tinyLiDAR_catch_me» деп аталатын кішкентай Scratch демо бағдарламасын (мұнда бөлісілген) және міндетті түрде тексеріңіз!…;)

Ұсынылған: