Cov txheej txheem:

Super yooj yim Raspberry Pi 433MHz Tsev Automation: 7 Kauj Ruam
Super yooj yim Raspberry Pi 433MHz Tsev Automation: 7 Kauj Ruam

Video: Super yooj yim Raspberry Pi 433MHz Tsev Automation: 7 Kauj Ruam

Video: Super yooj yim Raspberry Pi 433MHz Tsev Automation: 7 Kauj Ruam
Video: Микрокомпьютер: Raspberry PI 4 Model B 8 GB RAM Часть 11 Обзор набора Super Starter Kit. 32 проекта. 2024, Hlis ntuj nqeg
Anonim
Super yooj yim Raspberry Pi 433MHz Tsev Automation
Super yooj yim Raspberry Pi 433MHz Tsev Automation

Cov ntawv qhia no yog ib qho ntawm ntau qhov thaum nws los siv Raspberry Pi los tswj cov cuab yeej wireless nyob ib puag ncig hauv tsev. Zoo li ntau lwm tus, nws yuav qhia koj yuav ua li cas siv tus xa khoom pheej yig/txais tus khub txuas rau koj tus Pi kom cuam tshuam nrog cov khoom siv ua haujlwm ntawm feem ntau siv 433MHz xov tooj cua zaus. Nws yuav qhia tshwj xeeb rau koj yuav ua li cas tig ib qho cuab yeej hluav taws xob qhib lossis kaw siv koj li Pi los ntawm kev xa cov lus txib mus rau teeb tsa ntawm 433MHz cov chaw taws teeb tswj hluav taws xob.

Vim li cas kuv thiaj tsim cov ntawv qhia no yog tias muaj coob leej twb muaj lawm? Feem ntau vim tias zoo nkauj npaum li tag nrho lwm qhov kev qhia kuv tau hla mus zoo li ua rau muaj ntau yam sib txawv, tshwj xeeb yog ntawm software sab. Kuv pom tias lawv tso siab rau ntau ntawm cov tsev qiv ntawv thib peb, cov ntawv sau lossis cov lej cim kom ua txhua txoj haujlwm. Coob leej neeg yuav tsis piav qhia tias cov cai hauv qab tau ua dab tsi - lawv tsuas yog nug koj kom rub ob lossis peb daim software ntawm koj tus Pi thiab ua ib pawg lus txib, tsis muaj lus nug. Kuv yeej xav sim thiab siv kuv tus Pi kom tig cov khoom siv hluav taws xob qhib thiab nyob ib puag ncig kuv lub tsev siv teeb tsa ntawm 433MHz cov chaw taws teeb tswj, tab sis kuv xav tsim kuv tus kheej version ntawm cov kab ke uas kuv tuaj yeem nkag siab, cia siab tias tshem tawm qhov xav tau siv lwm tus neeg lub tsev qiv ntawv lossis ntawv sau.

Qhov ntawd yog qhov kev qhia no yog hais txog. Sab software ntawm cov kab ke no suav nrog ob tsab ntawv Python yooj yim heev - ib qho rau tau txais thiab kaw cov cim, thiab ib qho rau xa cov cim no rov qab mus rau lub hwj chim wireless. Qhov kev txais tos/xa tawm ntawm lub teeb liab tsuas yog siv tau yooj yim-rau-siv RPi. GPIO lub tsev qiv ntawv uas, tsawg kawg rau kuv, tuaj ua ntej teeb tsa nrog Raspbian. Lub tsev qiv ntawv no tseem tuaj yeem xa ncaj qha rau hauv Python.

Rau qhov haujlwm no koj yuav xav tau:

Ib Raspberry Pi. Txhua tus qauv yuav tsum ua haujlwm, Kuv tau siv tag nrho-hauv-ib qhov khoom siv pib, tab sis tej zaum koj xav tau lub hauv paus nkaus xwb

433MHz transmitter/receiver khub. Cov uas nquag siv hauv hom phiaj xwm no zoo li yog cov no. Kev yuav ib pob ntawm tsib yam zoo li qhov txuas ua ke kom ntseeg tau tias koj muaj qee yam khoom seem

Teeb ntawm 433MHz chaw taws teeb tswj lub qhov (socket). Kuv siv cov no uas kuv xav pom zoo, tab sis muaj ntau tus qauv suav nrog. Tsuas yog xyuas kom lawv ua haujlwm ntawm qhov zaus no

Qee cov khoom siv hluav taws xob tsim hluav taws xob. Kuv xav kom siv lub khob cij thiab qee cov hlua txuas txuas kom ua cov txheej txheem tsim hluav taws xob kom yooj yim li sai tau.

[Yog tias koj txiav txim siab yuav ib yam ntawm cov khoom no, Kuv yuav zoo siab heev yog tias koj nkag mus rau cov npe siv cov kab ntawv saum toj no - txoj kev ntawd, Kuv tau txais cov nyiaj me me ntawm cov txiaj ntsig yam tsis tau them nqi ntxiv rau koj!]

Kauj Ruam 1: Teeb Lub Tsev Txais

Teem Lub Tsev Txais
Teem Lub Tsev Txais

Ua ntej koj tuaj yeem siv koj tus Pi xa cov lus txib mus rau cov chaw taws teeb tswj, koj yuav tsum paub cov cim tshwj xeeb uas lawv teb rau. Feem ntau cov chaw tswj chaw taws teeb xa nrog lub xov tooj uas tuaj yeem siv los qhib lossis kaw cov chav tshwj xeeb. Hauv qhov uas kuv tau yuav, lub xov tooj muaj plaub kab sib txuas ua ke ON/OFF cov nyees khawm, txhua tus uas xa tawm ON lossis OFF teeb liab mus rau ib lub qhov (socket).

Qhov no ua rau muaj lus nug - yuav ua li cas peb thiaj paub cov nyees khawm sib haum mus rau lub qhov (socket) twg? Qhov no yeej nyob ntawm tus qauv koj muaj. Ib qho ntawm qhov laj thawj tseem ceeb uas kuv tau xaiv kuv qhov tshwj xeeb ntawm lub qhov (txuas hauv qhov kev taw qhia) yog tias cov koog tuaj yeem teeb tsa nrog lub cev hloov mus ua lub qhov tshwj xeeb teb rau ib qho tshwj xeeb ntawm ON/OFF khawm ntawm lub xov tooj. Qhov no kuj txhais tau tias koj tuaj yeem tshem tawm thiab txav lub qhov nyob ib ncig ntawm lub tsev paub tias txhua chav yuav ib txwm teb rau tib qho ON/OFF cov cim.

Thaum koj tau txiav txim siab yuav ua li cas koj lub qhov rooj sib cuam tshuam nrog lub xov tooj, koj yuav tsum siv koj li 433MHz tus txais xov tooj (daim duab saum toj no) kom 'hnoos' cov lej xa tawm los ntawm lub xov tooj. Thaum koj tau sau cov ntawv yoj ntawm cov lej no, koj tuaj yeem rov ua dua lawv siv Python thiab xa lawv tawm siv chav xa xov.

Thawj qhov uas yuav tsum ua ntawm no yog xaim tus pin ntawm koj tus txais mus rau qhov tseeb GPIO pins ntawm Pi. Tus neeg txais khoom muaj plaub tus pin, tab sis tsuas yog peb tus ntawm lawv xav tau. Kuv xav tias ob qho ntawm lub hauv paus pins muab cov txiaj ntsig zoo ib yam, yog li koj tsuas yog yuav tsum txuas mus rau ib qho ntawm lawv (tshwj tsis yog tias koj xav tau tshaj tawm cov cim tau txais mus rau ob qho GPIO sib cais).

Cov duab saum toj no piav qhia ntau ntxiv txog cov kab. Txhua tus pin ntawm tus txais yuav tuaj yeem txuas ncaj qha rau tus pin sib xws ntawm Pi. Kuv siv lub khob cij thiab cov hlua txuas ua kom cov txheej txheem zoo dua me ntsis. Nco ntsoov tias koj tuaj yeem xaiv ib qho GPIO cov ntaub ntawv tus pin txhawm rau txuas rau ib qho ntawm lub hauv paus txais tus pin. Kuv siv tus lej cim ua '23' ntawm kuv lub taub hau Pi.

TSEEM CEEB: Yog tias koj txuas tus lej cim '3v3' hauv daim duab saum toj no mus rau tus lej siab dua ntawm tus Pi (piv txwv li 5v), koj yuav zaum ua rau Pi tsis zoo raws li GPIO pins tsis tuaj yeem tiv taus qhov siab tshaj 3v3. Xwb, koj tuaj yeem siv nws nrog 5v thiab teeb tsa qhov faib hluav taws xob kom xa qhov hluav taws xob nyab xeeb rau DATA tus pin.

Qhov ntau ntawm tus txais yuav tsis loj heev ntawm qhov ntsuas hluav taws xob no, tshwj xeeb tshaj yog tias lub kav hlau txais xov tsis txuas nrog. Txawm li cas los xij, koj tsis xav tau qhov ntev nyob ntawm no - tsuav tus neeg txais tuaj yeem khaws cov cim los ntawm lub xov tooj thaum lawv tuav txoj cai ntawm ib sab, uas yog txhua yam peb xav tau.

Kauj Ruam 2: hnia tus lej ntawm tes

Sniffing Handset Codes
Sniffing Handset Codes

Tam sim no koj tus neeg txais xov tooj tau txuas mus rau Pi, koj tuaj yeem pib thawj theem zoo siab ntawm txoj haujlwm no - hnia. Qhov no cuam tshuam nrog siv cov ntawv Python txuas los sau cov teeb liab xa los ntawm lub xov tooj thaum txhua lub pob nyem. Tsab ntawv yog qhov yooj yim heev, thiab kuv xav kom koj ua tib zoo saib ua ntej koj ua nws - tom qab tag nrho, cov ntsiab lus ntawm txoj haujlwm no yog tias koj yuav tsis cia li dig muag khiav ntawm lwm tus lej!

Ua ntej koj pib txheej txheem no, koj yuav tsum paub tseeb tias koj muaj Python cov tsev qiv ntawv xav tau los sau cov ntawv sniffer. Lawv tau teev nyob rau sab saud ntawm tsab ntawv:

los ntawm datetime ntshuam datetime

ntshuam matplotlib.pyplot li pyplot ntshuam RPi. GPIO li GPIO

RPi. GPIO thiab cov tsev qiv ntawv sijhawm tau suav nrog kuv Raspbian faib, tab sis kuv yuav tsum teeb tsa lub tsev qiv ntawv matplotlib raws li hauv qab no:

sudo apt-tau nruab python-matplotlib

Lub tsev qiv ntawv no yog ib txwm siv cov phiaj xwm phiaj xwm tsev qiv ntawv uas muaj txiaj ntsig zoo txawm tias sab nraum ntawm txoj haujlwm no, yog li txhim kho nws yeej tsis tuaj yeem mob! Thaum koj lub tsev qiv ntawv tau hloov kho tshiab, koj npaj tau pib sau cov ntaub ntawv. Nov yog tsab ntawv ua haujlwm li cas:

Thaum nws tau khiav (siv qhov hais kom ua 'nab hab sej ReceiveRF.py'), nws yuav teeb tsa tus GPIO tus lej txhais ua cov ntaub ntawv nkag (tus pin 23 los ntawm lub neej ntawd). Nws yuav txuas ntxiv ua piv txwv tus lej thiab nkag mus seb nws puas tau txais digital 1 lossis 0. Qhov no txuas ntxiv rau lub sijhawm teem (5 vib nas this los ntawm lub neej ntawd). Thaum lub sijhawm txwv no mus txog, tsab ntawv yuav tso tseg cov ntaub ntawv thiab yuav kaw qhov nkag GPIO. Tom qab ntawd nws ua haujlwm me ntsis tom qab ua haujlwm thiab npaj cov txiaj ntsig tau txais tawm tsam lub sijhawm. Ib zaug ntxiv, yog tias koj muaj lus nug txog tsab ntawv ua dab tsi, koj tuaj yeem zaum teb lawv tus kheej tom qab saib seb nws ua haujlwm li cas. Kuv tau sim ua kom txoj cai nyeem tau thiab yooj yim li sai tau.

Yam koj yuav tsum tau ua yog saib rau thaum tsab ntawv qhia tias nws muaj ** Pib sau cia **. Thaum cov lus no tshwm sim, koj yuav tsum nias thiab tuav ib qho ntawm cov nyees khawm ntawm lub xov tooj rau li ib pliag. Nco ntsoov tuav nws ze rau tus txais. Thaum cov ntawv sau tiav lawm, nws yuav siv matplotlib los npaj cov duab kab duab ntawm lub teeb liab uas nws tau txais thaum lub sijhawm kaw. Thov nco ntsoov, yog tias koj txuas nrog koj tus Pi siv SSH tus thov kev pab xws li PuTTY, koj kuj tseem yuav tsum qhib X11 daim ntawv thov kom tso cai cov nthwv dej kom pom. Kuv siv xMing rau qhov no (thiab rau lwm yam xws li chaw taws teeb-desktopping rau hauv kuv Pi). Txhawm rau tso cov phiaj xwm pom, yooj yim pib xMing ua ntej koj sau tsab ntawv thiab tos kom cov txiaj ntsig tshwm.

Thaum koj lub qhov rais matplotlib tshwm, thaj tsam ntawm kev txaus siab hauv thaj av yuav tsum pom tseeb zoo nkauj. Koj tuaj yeem siv cov kev tswj hwm hauv qab ntawm lub qhov rais kom nthuav dav kom txog thaum koj tuaj yeem xaiv qhov siab thiab qis ntawm lub teeb liab kis los ntawm lub xov tooj thaum lub khawm tau tuav cia. Saib daim duab saum toj no rau qhov piv txwv ntawm kev ua kom tiav. Lub teeb liab yuav suav nrog luv luv sib cais los ntawm lub sijhawm sib xws uas tsis tau txais lub teeb liab. Qhov thaiv ntawm cov mem tes luv no tej zaum yuav ua raws los ntawm lub sijhawm ntev dua uas tsis tau txais dab tsi, tom qab uas tus qauv yuav rov ua dua. Thaum koj tau txheeb xyuas tus qauv uas yog ib qho piv txwv ntawm cov cai, coj lub vijtsam zoo li ntawd nyob rau sab saum toj ntawm nplooj ntawv no, thiab txuas ntxiv mus rau theem tom ntej los txhais nws.

Kauj Ruam 3: Tshaj Tawm Qhov Teeb Meem

Tshaj Tawm Qhov Teeb Meem
Tshaj Tawm Qhov Teeb Meem

Tam sim no koj tau txheeb xyuas qhov thaiv ntawm qhov siab thiab qis qis sib xws rau lub pob tshwj xeeb lub teeb liab, koj yuav xav tau txoj hauv kev khaws cia thiab txhais nws. Hauv qhov piv txwv saum toj no piv txwv, koj yuav pom tias tsuas muaj ob qho qauv sib txawv uas ua rau tag nrho cov teeb liab thaiv. Qee zaum koj pom luv luv ua raws los ntawm qis qis, thiab qee zaum nws yog qhov txawv - ntev siab ua raws los ntawm luv luv. Thaum kuv tau sau kuv cov cim tseg, kuv txiav txim siab siv cov lus teev npe hauv qab no:

1 = short_on + long_off0 = long_on + short_off

Saib dua ntawm daim ntawv sau npe yoj, thiab koj yuav pom tias kuv txhais li cas. Thaum koj tau txheeb xyuas cov qauv sib npaug hauv koj lub teeb liab, txhua yam koj yuav tsum ua yog suav tus 1's thiab 0's txhawm rau txhim kho ntu. Thaum sau tseg, lub teeb liab saum toj no tuaj yeem sau raws li hauv qab no:

1111111111111010101011101

Tam sim no koj tsuas yog yuav tsum rov ua cov txheej txheem no txhawm rau sau thiab sau cov cim sib xws rau lwm lub nyees khawm ntawm koj lub xov tooj, thiab koj tau ua tiav thawj feem ntawm tus txheej txheem!

Ua ntej koj tuaj yeem rov xa cov cim siv lub tshuab xa tawm, muaj haujlwm me ntsis ntxiv los ua. Lub sijhawm nruab nrab ntawm qhov siab thiab qis sib piv rau 1 lossis 0 yog qhov tseem ceeb heev, thiab koj yuav tsum paub tseeb tias koj paub ntev npaum li cas 'luv_on' lossis 'ntev_off' ua tau ntev npaum li cas. Txog kuv cov lej, muaj peb daim ntaub ntawv sijhawm uas kuv xav tau los txhawm rau txhawm rau rov ua cov cim:

  • Lub sijhawm luv luv, piv txwv li pib ntawm 1 lossis xaus ntawm 0.
  • Lub sijhawm luv 'ncua', piv txwv li xaus ntawm 1 lossis pib ntawm 0.
  • Lub sijhawm ncua sijhawm ncua ntxiv. Kuv pom tias thaum kuv tuav lub pob khawm ntawm lub xov tooj, muaj ib lub sijhawm 'ncua_off' nruab nrab ntawm txhua qhov rov ua dua ntawm lub teeb liab thaiv. Qhov kev ncua no yog siv rau synchronization thiab muaj lub sijhawm ruaj khov.

Txhawm rau txiav txim siab cov sijhawm no, koj tuaj yeem siv qhov ua haujlwm nthuav dav ntawm lub qhov rais matplotlib kom nthuav dav txhua txoj hauv kev thiab tso tus cursor hla ntu cuam tshuam ntawm lub teeb liab. Tus nyeem ntawv qhov chaw tus cursor nyob hauv qab ntawm lub qhov rais yuav tsum tso cai rau koj txiav txim siab qhov dav ntawm txhua qhov ntawm lub teeb liab yog qhov sib xws mus ntev, luv lossis ncua ncua. Nco ntsoov tias x-axis ntawm cov phiaj xwm sawv cev rau lub sijhawm, thiab x tivthaiv ntawm tus cursor nyeem tawm yog nyob rau hauv vib nas this. Rau kuv, qhov dav tau raws li hauv qab no (hauv vib nas this):

  • luv_delay = 0.00045
  • ntev_delay = 0.00090 (ob zaug ntev li 'luv')
  • ncua_delay = 0.0096

Kauj Ruam 4: Teeb Lub Tsev Hloov Chaw

Teem Lub Tsev Transmitter
Teem Lub Tsev Transmitter

Thaum koj tau sau koj cov lej thiab cov ntaub ntawv sijhawm, koj tuaj yeem txuas koj lub chaw txais khoom vim koj yuav tsis xav tau nws ntxiv lawm. Koj tuaj yeem xaim xov tooj xa mus ncaj qha rau Pi Pi GPIO tus pin raws li qhia hauv daim duab saum toj no. Kuv tau pom tias cov pins ntawm cov chaw xa khoom tau sau npe, uas ua rau cov txheej txheem yooj yim dua.

Hauv qhov no, nws yog qhov zoo los ua lub zog siv chav 5v los ntawm Pi raws li DATA tus pin yuav tsis xa cov cim rau Pi, tsuas yog tau txais lawv. Tsis tas li, lub zog 5v yuav muab ntau qhov sib kis ntau dua li siv 3v3 cov khoom siv. Ib zaug ntxiv, koj tuaj yeem txuas DATA tus pin rau txhua tus pin tsim nyog ntawm Pi. Kuv siv tus pin 23 (zoo ib yam rau tus txais).

Lwm qhov uas kuv xav kom ua yog ntxiv tus kav hlau txais xov rau lub qhov me me nyob rau sab xis saum toj ntawm tus xa xov. Kuv siv daim 17cm ntev ntawm txoj hlua ncaj. Qee qhov chaw pom zoo kom coiled xaim ntawm qhov ntev sib xws. Kuv tsis paub meej tias qhov twg zoo dua, tab sis cov xov hlau ncaj muab ntau txaus rau kuv tig lub qhov (socket) rau/tawm ntawm txhua qhov chaw hauv kuv lub tiaj tiaj. Nws yog qhov zoo tshaj los muab lub kav hlau txais xov, tab sis kuv nyuam qhuav tshem qee cov yas los ntawm cov xaim thiab qhwv cov tooj liab los ntawm lub qhov.

Thaum lub tshuab xa xov hluav taws xob txuas, qhov ntawd yog txhua yam kev teeb tsa kho vajtse tiav! Tsuas yog ib qho uas yuav tsum ua tam sim no yog teeb tsa koj lub qhov rooj nyob ib puag ncig lub tsev thiab saib ntawm qhov kev xa xov.

Kauj Ruam 5: Tshaj Tawm Cov Teeb Meem Siv Tus Pi

Nov yog qhov ntawv Python thib ob los rau hauv. Nws tau tsim los kom yooj yim ib yam li thawj zaug, yog tias tsis yog li ntawd. Ib zaug ntxiv, thov rub nws thiab saib cov cai. Koj yuav tsum tau kho cov ntawv txhawm rau xa cov cim kom raug raws li cov ntaub ntawv koj tau sau tseg hauv qib 3, yog li tam sim no yog lub sijhawm zoo kom tau nrawm nrawm ntawm nws.

Cov tsev qiv ntawv xav tau los sau cov ntawv no tau ua tiav ua ntej ntawm kuv Pi, yog li tsis xav tau kev teeb tsa ntxiv. Lawv tau teev nyob rau sab saud ntawm tsab ntawv:

lub sij hawm ntshuam

ntshuam sys ntshuam RPi. GPIO ua GPIO

Hauv qab lub tsev qiv ntawv ntshuam yog cov ntaub ntawv koj yuav tau kho. Nov yog qhov nws zoo li cas los ntawm lub neej ntawd (qhov no yog cov ntaub ntawv sib xws rau kuv lub qhov rooj raws li txiav txim siab siv qib 3):

a_on = '111111111111111010101111101'

a_off = '1111111111111010101010111' b_on = '1111111111101110101011101' b_off = '1111111111101110101010111' c_on = '1111111111101011101011101' c_off = '1111111111101011101010111' d_on = '1111111111101010111011101' d_off = '1111111111101010111010111' short_delay = 0,00045 long_delay = 0,00090 extended_delay = 0,0096

Ntawm no peb muaj yim txoj hlua (ob qho rau txhua khub ntawm khawm/tawm ntawm kuv lub xov tooj - koj yuav muaj ntau lossis tsawg dua cov lej) ua raws los ntawm peb daim ntawm cov ntaub ntawv sijhawm tseem txiav txim siab hauv kauj ruam 3. Siv sijhawm kom paub tseeb tias koj muaj nkag mus rau cov ntaub ntawv no kom raug.

Thaum koj zoo siab nrog cov lej/ncua uas koj tau nkag mus rau hauv tsab ntawv (koj tuaj yeem hloov npe cov cai hloov pauv yog tias koj nyiam), koj zoo nkauj npaum li npaj los sim tawm qhov system! Ua ntej koj ua, saib qhov transmit_code () muaj nuj nqi hauv tsab ntawv. Nov yog qhov sib cuam tshuam tiag tiag nrog tus xa tawm tshwm sim. Txoj haujlwm no cia siab tias ib qho ntawm cov hlua kab ntawv yuav raug xa mus raws li kev sib cav. Tom qab ntawd nws qhib tus pin tus lej txhais ua GPIO tso tawm thiab tig los ntawm txhua tus cim hauv kab ntawv. Tom qab ntawd nws tig lub tshuab xa xov rau lossis tawm raws li lub sijhawm cov ntaub ntawv koj nkag mus tsim kom muaj cov yoj sib txuam ua raws txoj cai kab. Nws xa txhua txoj cai ntau zaus (10 los ntawm lub neej ntawd) txhawm rau txo txoj hauv kev uas nws tau ploj mus, thiab tawm sijhawm ncua ntev ntawm txhua qhov chaws thaiv, ib yam li lub xov tooj.

Txhawm rau khiav tsab ntawv, koj tuaj yeem siv cov lus txib hauv qab no:

nab hab sej TransmitRF.py code_1 code_2…

Koj tuaj yeem xa ntau txoj hlua kab nrog ib zaug ntawm tsab ntawv. Piv txwv li, kom qhib qhov (a) thiab (b) rau thiab qhov (c) tawm, khiav cov ntawv nrog cov lus txib hauv qab no:

nab hab sej TransmitRF.py a_on b_on c_off

Kauj Ruam 6: Lus Cim Txog Sijhawm Kom raug

Raws li tau hais, lub sijhawm nruab nrab ntawm kev sib kis rau/tawm lub plab yog qhov tseem ceeb heev. Tsab ntawv TransmitRF.py siv nab nab lub sijhawm.sleep () muaj nuj nqi los txhim kho cov nthwv dej nrog qhov ua haujlwm mem tes raug, tab sis nws yuav tsum tau sau tseg tias txoj haujlwm no tsis raug kiag li. Qhov ntev uas nws ua rau tsab ntawv tos ua ntej ua tiav kev ua haujlwm tom ntej tuaj yeem vam khom tus txheej txheem thauj khoom ntawm qhov muab tam sim ntawd. Qhov ntawd yog lwm qhov laj thawj yog vim li cas TransmitRF.py xa txhua tus lej ntau zaus - tsuas yog thaum lub sijhawm.sleep () muaj nuj nqi tsis tuaj yeem tsim kho ib qho piv txwv ntawm cov cai.

Kuv tus kheej tsis tau muaj teeb meem nrog sijhawm.sleep () thaum nws los txog rau xa cov lej. Txawm li cas los xij kuv paub tias kuv lub sijhawm pw tsaug zog () zoo li muaj qhov yuam kev txog 0.1ms. Kuv txiav txim siab qhov no siv cov ntawv SleepTest.py txuas uas tuaj yeem siv los kwv yees qhov tseeb ntawm koj li Pi lub sijhawm.sleep () muaj nuj nqi li cas. Rau kuv qhov tshwj xeeb-tswj qhov nyob, qhov ncua sijhawm luv tshaj plaws kuv xav tau los ua yog 0.45ms. Raws li kuv tau hais, Kuv tsis tau muaj teeb meem nrog qhov tsis teb lus, yog li nws zoo li 0.45 ± 0.1ms yog qhov zoo txaus.

Muaj lwm txoj hauv kev los xyuas kom meej tias qhov kev ncua yog qhov tseeb dua; piv txwv li, koj tuaj yeem siv lub siab PIC nti los tsim cov lej, tab sis cov khoom zoo li ntawd yog dhau qhov uas tau qhia ntawm qhov kev qhia no.

Kauj Ruam 7: Xaus

Xaus
Xaus

Txoj haujlwm no tau nthuav qhia txoj hauv kev los tswj cov khoom siv hluav taws xob uas siv Raspberry Pi thiab teeb tsa ntawm 433MHz cov chaw taws teeb tswj, nrog rau kev tsom mus rau qhov yooj yim thiab pom kev. Nov yog qhov haujlwm zoo tshaj plaws thiab hloov pauv tau uas kuv tau siv kuv Pi rau, thiab muaj cov ntawv thov tsis txwv rau nws. Nov yog qee yam uas kuv tuaj yeem ua tam sim no ua tsaug rau kuv Pi:

  • Qhib lub tshuab rhaub hluav taws xob nyob ze kuv lub txaj ib nrab teev ua ntej kuv lub tswb nrov tawm.
  • Tig lub rhaub tawm ib teev tom qab kuv tau mus pw.
  • Qhib kuv lub teeb ntawm lub txaj thaum kuv lub tswb nrov tawm kom kuv tsis txhob rov qab tsaug zog.
  • thiab ntau ntxiv…

Rau feem ntau ntawm cov haujlwm no, Kuv siv crontab ua haujlwm hauv Linux. Qhov no tso cai rau koj teeb tsa cov haujlwm tsis siv neeg los ua haujlwm TransmitRF.py tsab ntawv ntawm lub sijhawm tshwj xeeb. Koj kuj tseem tuaj yeem siv Linux ntawm kev hais kom ua haujlwm ib leeg (uas, rau kuv, xav tau kev teeb tsa cais siv 'sudo apt-get install at'). Piv txwv li, tig kuv lub rhaub ib nrab teev ua ntej kuv lub tswb nrov tawm thaum sawv ntxov tom ntej, txhua yam kuv yuav tsum tau ua yog ntaus:

thaum 05:30

nab hab sej TransmitRF.py c_on

Koj kuj tseem tuaj yeem siv txoj haujlwm no ua ke nrog kuv Dropbox kev tshuaj xyuas lub tsev tswj cov cuab yeej siv hauv is taws nem! Ua tsaug rau kev nyeem ntawv, thiab yog tias koj xav qhia meej qee yam lossis qhia koj qhov kev xav, thov tshaj tawm cov lus!

Pom zoo: