Мазмұны:
- 1 -қадам: Сағаттың созылуы дегеніміз не?
- 2 -қадам: ұшатын шошқалардан кішкене көмек
- 3 -қадам: TL; DR нұсқасы
- 4 -қадам: Орнату
- 5 -қадам: Pigpio орнатыңыз
- 6 -қадам: Қосымша: Dev жүйесін орнату
- 7 -қадам: WinSCP орнату
- 8 -қадам: (w) кодты алу
- 9-қадам: Жақында болатын хакерлерге ескерту
Бейне: Pi -де TinyLiDAR?: 9 қадам (суреттермен)
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:27
Тағы да сәлем!
Енді сіз tinyLiDAR мен Arduino -мен сапалы уақыт өткіздіңіз - сіздің Raspberry Pi біршама жалғыздықты сезінуі мүмкін;)
Pi -де I2C порты бар ма? Ендеше, неге оны жалғап, сонда сынап көрмеске ?! Жақсы жоспар, бірақ егер сіз қазірдің өзінде тырысып көрген болсаңыз - сіз деректердің біртүрлі көрінетінін байқаған боларсыз.
Иә, pi қазірдің өзінде 1,8K тартқыштармен жабдықталған, сондықтан 4.7K тартпаларды контурдан шығару үшін tinyLiDAR-дегі I2C жастықшаларын кесуге тура келеді-толық ақпарат алу үшін анықтамалық нұсқаулықты қараңыз. Бірақ бұл оғаш деректердің себебі емес.
Себебі, pi -дің I2C автобусы нақты талаптарға сәйкес келмейді. Pi бірінші рет Broadcom чиптер жиынтығының арқасында енгізілгеннен бері осылай болды. Басынан бастап олар «сағатты созу» деп аталатын I2C мүмкіндігін дұрыс қолдамады.
Бұл қате туралы қосымша ақпаратты мына жерден оқи аласыз.
1 -қадам: Сағаттың созылуы дегеніміз не?
Өздеріңіз білетіндей, I2C шинасы 3 сымнан тұрады. Бұл сағаттарға (SCL), деректерге (SDA) және ортақ негізге арналған. Сағат пен деректер желілері ашық коллекторлы/ашық дренажды болып табылады, демек оларға логиканың жоғары болуын қамтамасыз ету үшін оң жеткізу рельсіне қосылған тартқыш резисторлар қажет. Логиканы төмендету үшін автобустағы кез келген құрылғы желіні ортақ жерге түсіре алады.
I2C стандартына сәйкес, Master құрылғысы SCL желісінде сағат сигналын беретін құрылғы болып табылады, бірақ егер бұл жылдамдық тым жылдам болса, онда Slave құрылғысына сағат тілін ұстап тұру арқылы оны баяулатуға рұқсат етіледі. ақпаратпен. Мұны біз «сағаттың созылуы» деп атаймыз.
Ресми түрде, сағаттардың созылуы I2C стандартында қосымша мүмкіндіктер тізіміне енгізілген, бірақ бұл сенсорлық мәліметтерді беру үшін қосымша уақыт қажет болатын көптеген «ақылды» құлдарға қажет өте кең таралған мүмкіндік.
2 -қадам: ұшатын шошқалардан кішкене көмек
I2C h/w қатесімен күресу үшін біз «pigpio» деп аталатын жақсы кішкентай тегін кітапхананы таптық. Бұл C тілінде жазылған өте танымал, жылдам және жеңіл кітапхана. Ол Raspberry Pi үшін фондық демон ретінде жұмыс істейді және I2C -ті, сондай -ақ кез келген GPIO -ны питоннан оңай басқаруға мүмкіндік береді. Кітапхана I2C порттарына GPIO сияқты қарайды және осылайша I2C сағаттарының созылу қатесін айналып өтті. Пи -дегі барлық бағдарламалық жасақтама сияқты, pigpio кітапханасы қарапайым «қосу» ғана, сондықтан кеттік!
3 -қадам: TL; DR нұсқасы
Putty -ге кіру үшін SSH -ді орнатыңыз pigpio кітапханасын орнатыңыз tinyLiDAR ZIP файлын алыңыз Unzip және Putty -ден іске қосыңыз.
Қосымша:
WinSCP көмегімен SublimeText орнату
4 -қадам: Орнату
Біздің Raspberry Pi 3 үшін біз стандартты New Out of Box of Software (NOOBS Lite v2.4) операциялық жүйесін қолдандық. Онда біз үшін код орнатуға дайын Python әдепкі нұсқасы бар. Сіз ОЖ -ны осы жерден жүктей аласыз.
Micro SD картасына орнатылғаннан кейін пернетақтаны және мониторды қосу қажет, осылайша сіз Pi -ге бірінші рет кіре аласыз:
Пайдаланушы аты: pi Құпия сөз: таңқурай
Содан кейін келесі командалармен қауіпсіз қабық серверін (SSH) іске қосуға болады:
sudo systemctl sshsudo systemctl іске қосуды қосады
Содан кейін біз сіздің желіңіздегі pi -дің IP -адресін қажет етеміз, сондықтан PuTTY -мен кіре аламыз. Мұны алу үшін жай ғана теріңіз:
хост атауы -I.
IPv4 форматындағы адресті іздеңіз (біздің орнату үшін: 192.168.0.27)
Жоғарыда көрсетілген қадамдар пидің «бассыз» жұмыс істеуіне мүмкіндік береді, яғни сізге бұл пернетақтаны қайта терудің қажеті жоқ, сонымен қатар бейне монитордың қажеті жоқ. Біз алдағы уақытта қауіпсіз SSH қосылымы арқылы желіге кіреміз. Жоғарыдағы пәрмен SSH сервері pi қосылған сайын автоматты түрде іске қосылады. Бұл кодтау кезінде бізге ыңғайлы, бірақ бұл кейінірек қауіпсіздікке қауіп төндіруі мүмкін (параноид болу жақсы), сондықтан сіз дайын болған кезде осы пәрменді пайдаланып SSH автоматты түрде іске қосуды өшіре аласыз:
sudo systemctl ssh өшіреді
Бұл пәрмен әрине pi -ге қосылған пернетақтада терілуі керек.
PuTTY - бұл компьютерден pi -ге командалар беру үшін қажет терминалды бағдарлама, сондықтан сіз соңғы көшірмені осы жерден алуыңыз керек.
PuTTY орнатыңыз және іске қосыңыз. IP мекенжайын хост атауына жоғарыдан енгізу керек және SSH әдепкі параметрлерін пайдалану қажет. Сеансқа кез келген атау беріңіз және сақтау түймесін басыңыз. Содан кейін жүктеу түймесін басып, сеансты бастау үшін АШУ түймесін басыңыз.
Ол сізді pi үшін кіру экранына апаруы керек. Бұрын пайдаланылған логин мен парольді қолданыңыз.
5 -қадам: Pigpio орнатыңыз
Енді осыдан кейін бізге орнату қажет жалғыз нәрсе - бұл кітапхана кітапханасы және біз оны келесі пәрмендерді қолдана отырып жасай аламыз.
Кеңес: PuTTY терминалына [ctrl+c] көшіріп, [тышқанның оң жақ батырмасымен] қоюға болады.
sudo apt-get жаңартуы
sudo apt-get install pigpio python-pigpio python3-pigpio
6 -қадам: Қосымша: Dev жүйесін орнату
Міне, сіздің кодты әзірлеу әлемінде біраз уақытты үнемдеуге көмектесетін кеңес. Біз unix негізіндегі мәтіндік редакторларды жек көреміз. Қолданушы интерфейсі әдетте ыңғайсыз және қаріптер сорылады. GNU nano төзімді, бірақ ешқайсысы SublimeText сияқты тазартылмаған, оны сіз осы жерден жүктей аласыз
Бізде терезеге негізделген даму ортасы бар және мүмкіндігінше бұл мәтіндік редакторды қолданғанды ұнатамыз. Бұл жерде сіздің кеңесіңіз - бұл кәсіби мәтіндік редакторды Windows жұмыс үстелінде сіздің бассыз пи -ге тікелей кодтау үшін пайдалануға мүмкіндік беретін жүйе.
Қалай? WinSCP деп аталатын ақысыз қосымшаны пайдаланып, оны осы жерден жүктеуге болады
7 -қадам: WinSCP орнату
WinSCP - бұл сіздің компьютеріңіздегі файл менеджерінде көретін сияқты сіздің rpi файлдарыңыздың графикалық көрінісін беретін қауіпсіз файл тасымалдау бағдарламасы.
Сонымен, жоғарыдағы екі бағдарламаны дәл қазір орнатыңыз.
Әрі қарай олардың барлығы дұрыс жұмыс істеуі үшін сізге бірнеше түзетулер енгізу қажет болады.
WinSCP үшін ЖАҢА сайтты басуға болады. Біз әдепкі SFTP параметрлерін қолданамыз және сізге тек pi мекенжайының IP мекенжайын (хост атауы үшін) және логин атауын (пайдаланушы аты үшін) енгізу қажет. Қаласаңыз, құпия сөзді бос қалдыруды таңдай аласыз - бұл сіз кірген сайын құпия сөзді сұрайды.
Содан кейін Advanced түймесін басыңыз, содан кейін Environment Shell параметрлері үшін сол жағын басыңыз. Оң жақтағы «Әдепкі» параметрін төмен қарай «sudo su -» опциясына өзгертіңіз. Бұл SublimeText -тен сақтауды басқан кезде өзгертулерді pi -ге рұқсатсыз жіберуге мүмкіндік береді.
SublimeText бағдарламасын WinSCP бағдарламасында әдепкі редактор етіп орнатыңыз
Мұны істеу үшін, NewSite диалогын бастаған WinSCP кіру параметрлері экранындағы Құралдар түймесін басыңыз. Екі скриншот мұның қалай конфигурацияланғанын көрсетеді, бірақ негізінен сіз редакторлардың параметрлерін конфигурациялау үшін басыңыз және Сыртқы редактор болатын редакторды қосыңыз. Содан кейін компьютерде осы редактор орналасқан.exe файлын іздеуге болады.
8 -қадам: (w) кодты алу
Аяқтағаннан кейін WinSCP және PuTTY көмегімен кіріңіз.
Енді біз tinyLiDAR кодын бастауға дайынбыз.
Үй/pi каталогының астында tinyLiDAR деп аталатын каталог жасаңыз.
Сіз мұны WinSCP экранының оң жағындағы тінтуірдің оң жақ түймесімен нұқу арқылы жасай аласыз және Жаңа / Каталогты таңдаңыз.
Енді PuTTY терминалында теруге болады
cd t
tinyLiDAR каталогына кіру үшін сіздің командаңызды автоматты түрде толтыруға мүмкіндік беру үшін қойындысын басыңыз.
Мұнда бір рет келесілерді теріңіз:
wget
файлдарды тікелей біздің серверден алу үшін. Содан кейін оларды теру арқылы ашуға болады
ашу r
және атын қайтадан автоматты түрде толтыру үшін қойындысын басыңыз
Оны іске қосу үшін теріңіз
python tlgui.py
Сіздің tinyLiDAR сіздің pi -дегі әрбір командаға жауап береді:)
9-қадам: Жақында болатын хакерлерге ескерту
WinSCP -тен кез келген кодтық файлды екі рет шертіп, сорғыштың астынан қараңыз. Олар.py кеңейтімі бар адамдар. Файлдар SublimeText -те тікелей компьютерде ашылуы керек. Сізге ұнайтын нәрсені өзгертіңіз, содан кейін сақтау түймесін басыңыз. Өзгертулер тікелей pi -ге сақталады.
Дайын болған кезде, сіз оны соңғы терілген пәрмен үшін жоғары көрсеткі пернесін қолданып қайта іске қосасыз немесе оны қайтадан енгізіп, enter пернесін басыңыз:
python tlgui.py
Сіз Terminal GUI орналасуы Arduino нұсқасына қарағанда әлдеқайда жақсы екенін байқадыңыз. PuTTY юникодты таңбаларды қолдайтындықтан, біз оны жақсартылған етіп көрсету үшін курсорды басқару үшін қосымша таңбаларды қолдана алдық.
Бұл жерде (Arduino нұсқасымен салыстырғанда) үздіксіз оқу функциясы үшін «dc» деген қосымша пәрмен бар. Байқап көріңіз және сіз не ойлайтыныңызды көріңіз.
Бар болғаны!
Оқығаныңызға рахмет және пиді бұзуды ұнатыңыз:)
Ұсынылған:
Arduino басқарылатын робот - екі қадам: 13 қадам (суреттермен)
Arduino басқарылатын роботты екіжақты: Мен әрқашан роботтарға қызығатынмын, әсіресе адамның іс -әрекетіне еліктеуге тырысатын. Бұл қызығушылық мені жаяу жүруге және жүгіруге еліктей алатын екіжақты робот құрастыруға және дамытуға талпындырды. Бұл нұсқаулықта мен сізге көрсетемін
CircuitPython және TinyLiDAR: Қарапайым мысал: 3 қадам
CircuitPython және TinyLiDAR: Қарапайым мысал: MicroElectronicDesign tinyLiDAR-бұл i2c шинасы бар ST VL53L0X ұшу уақыты (ToF) ауқымы модулі. Adafruit микроконтроллер тақталары бұл сенсорға оңай қосылады, өйткені олар i2c протоколын деректер түйіні арқылы сөйлей алады
TinyLiDAR сіздің гаражда!: 10 қадам
TinyLiDAR сіздің гаражда!: DIY WiFi гараж есігін ашу жобасы IoT әлемі енді ғана жарыла бастады - бүкіл әлемдегі технологиялық компаниялар өздерінің жаңа әлемге қалай сәйкес келетінін анықтауға тырысады. Бұл үлкен мүмкіндік! Сондықтан бұл нұсқаулық үшін мен
IoT үшін TinyLiDAR: 3 қадам
IoT үшін TinyLiDAR: Егер сіз айналаңызға қарасаңыз, күнделікті өмірде көптеген ақылды құрылғылар қолданылып жатқанын байқайсыз. Олар әдетте батареямен жұмыс істейді және әдетте қандай да бір түрде Интернетке («бұлт» деп аталады) қосылады. Мұның бәрі біз «IoT» деп атайтын құрылғылар және олар
TinyLiDAR Scratch -те қолдануға бола ма?: 3 қадам
TinyLiDAR … Scratch -ті қолдана аламын ба? TinyLiDAR Arduino UNO үшін қарапайым LiDAR сенсоры ретінде жасалғанына қарамастан, оны басқа платформада қолдануға еш кедергі жоқ