Cov txheej txheem:

Raspberry Pi-Arduino-SignalR Tsev Automation Hub: 11 Cov Kauj Ruam (nrog Duab)
Raspberry Pi-Arduino-SignalR Tsev Automation Hub: 11 Cov Kauj Ruam (nrog Duab)

Video: Raspberry Pi-Arduino-SignalR Tsev Automation Hub: 11 Cov Kauj Ruam (nrog Duab)

Video: Raspberry Pi-Arduino-SignalR Tsev Automation Hub: 11 Cov Kauj Ruam (nrog Duab)
Video: How to build a robot arm with .NET 7, Raspberry Pi, Blazor, and SignalR 2024, Kaum ib hlis
Anonim
Raspberry Pi-Arduino-SignalR Tsev Automation Hub
Raspberry Pi-Arduino-SignalR Tsev Automation Hub

Ua raws ob peb ntawm kuv qhov prelude IBLEs luam tawm ntawm no thiab ntawm no, txoj haujlwm no yog thawj kauj ruam ntawm kev tsim cov qauv yooj yim ntawm kev ua haujlwm Tsev Automation Hub.

Kuv tau siv ntau yam thev naus laus zis sib txawv hauv kev rau siab kom nkag siab tias kuv yuav tuaj yeem siv txhua yam uas kuv tau kawm yav dhau los thiab yam tshiab uas kuv txuas ntxiv kawm raws li hnub tau ua tiav.

Yog li no, Qhov Chaw Siv Hluav Taws Xob no suav nrog cov hauv qab no:

SQL Server 2012 database uas:

  • khaws ib daim ntawv teev npe ua ntej txiav txim siab Infrared (IR) cov lej hauv lub rooj nrog rau qhov tshwj xeeb "tus lej yuam sij"
  • cov lej yuam sij yog lub npe nkag siab (los ntawm tus neeg siv) txhawm rau txhawm rau txheeb xyuas lub hom phiaj ntawm lawv cov lej IR cuam tshuam

ASP. NET Lub Sijhawm Tiag SignalR Hub Web Daim Ntawv Thov uas:

  • tos thiab tau txais "cov lej yuam sij" raws li cov lus txib los ntawm tus neeg siv ntsib HTML tus neeg siv khoom
  • thaum tau txais, txuas rau SQL database thiab khaws IR Code siv tus lej nkag nkag
  • xa cov lej IR uas xa rov qab mus rau Python SignalR tus neeg siv khoom

Tus neeg siv ntsib HTML SignalR Dashboard tus thov kev pab uas:

  • sib txuas lus tus lej cim tshwj xeeb rau Hub ntawm jQuery SignalR Client APIs
  • txhua lub khawm ntawm Dashboard yuav sawv cev rau tus lej cim tshwj xeeb sau tseg hauv SQL database table

Python SignalR daim ntawv thov kev pabcuam yav dhau los khiav ntawm Raspberry Pi 2.0 uas:

  • tau txais cov lej IR raws li cov lus txib los ntawm Hub
  • nrhiav cov delimiters hauv IR Code thiab ua txhaum txoj cai ntev heev rau hauv ntu
  • sib txuas lus hla Serial chaw nres nkoj mus rau Arduino thiab sau tawm txhua ntu ua ntu zus

Arduino IR Transmitter Sketch uas:

  • tos thiab tau txais txhua qhov ntawm IR ntu ntu hla ntawm Serial chaw nres nkoj
  • sib sau ua ke cov cai rau hauv IR Code tsis array
  • ntim cov khoom tsis mus rau hauv IR xa lus txib siv IRLib Arduino lub tsev qiv ntawv

Yog tias lub hom phiaj siv hluav taws xob nyob ib puag ncig IR Transmitter, tom qab ntawd cov cuab yeej siv (tej zaum) yuav hnov mob rau IR teeb liab kis los ntawm Arduino

NCO TSEG

Txawm hais tias, cov cuab yeej siv hluav taws xob uas kuv siv hauv qhov kev tawm tsam no cuam tshuam rau IR cov cim, koj yuav xav nyeem nqe lus no ntawm kuv lwm IBLE rau qhov laj thawj yog vim li cas kuv thiaj hais tias cov cuab yeej (tuaj yeem) ua rau lub teeb liab IR.

Lub sij hawm rau yob.

Kauj Ruam 1: Yam Koj Xav Tau, Ua Ntej Koj Xav Tau Li Cas

Yam Koj Xav Tau, Ua Ntej Koj Xav Tau Li Cas
Yam Koj Xav Tau, Ua Ntej Koj Xav Tau Li Cas
Yam Koj Xav Tau, Ua Ntej Koj Xav Tau Li Cas
Yam Koj Xav Tau, Ua Ntej Koj Xav Tau Li Cas
Yam Koj Xav Tau, Ua Ntej Koj Xav Tau Li Cas
Yam Koj Xav Tau, Ua Ntej Koj Xav Tau Li Cas

Cov lus qhia no tshem tawm nrog qee qhov haujlwm uas tau ua yav tas los uas tseem ua rau kuv IBLE kawg.

Yog li, ua ntej peb nqis mus rau qhov peb xav tau rau IBLE no, nws tau pom zoo tias koj nyeem cov lus qhia no rau qee qhov keeb kwm ntawm yuav ua li cas:

  1. Arduino IRLib Infrared Library tau teeb tsa
  2. Yuav ua li cas IR cov lej siv hauv IBLE no raug ntes siv IR Txais
  3. Yuav ua li cas thiaj li tau txais cov lej IR tau siv los tswj cov cuab yeej siv ntawm IR Transmitter

Tom qab ua tiav qhov IBLE no, Kuv tau xa ASP. NET IR Code Recorder web daim ntawv thov uas yuav:

  • Txais yuav IR Code uas tau ntes nrog rau kev nkag siab lub npe tus lej yuam sij raws li kev nkag los ntawm lub vev xaib
  • Ua txhaum qhov ntev IR txoj cai rau hauv ntu tsawg dua 64 cim ntev kom nyob hauv qab qhov txwv tsis pub dhau ntawm Arduino Uno
  • Cov ntu kawg ntawm cov lej yuav raug kho ua ntej nrog "E" uas qhia rau Arduino tias nws tau txais ntu kawg ntawm cov cai
  • Txhua ntu yuav raug cais los ntawm cov kav dej ua ntej ua ke tau rov qab los rau hauv txoj hlua ntev
  • Thaum kawg, segmented IR Code nrog rau nws cov lej tseem ceeb tau khaws cia rau hauv SQL Server 2012 database

Nws yog SQL database uas tsim ib qho ntawm cov khoom siv hauv Tsev Automation Hub tau piav qhia hauv IBLE no.

NCO TSEG

IR Code Recorder Web daim ntawv thov tsis yog ib feem ntawm kev sib tham ntawm no rau qhov laj thawj hauv qab no:

  • Koj tuaj yeem khaws cov lej siv tus lej siv Arduino Sketch, faib lawv rau hauv cov ntu-cov kab uas tau txiav tawm thiab khaws cia rau hauv cov ntaub ntawv tsis tas yuav tsim kom muaj qhov Web Application Zoo.
  • Tsis zoo li IBLE no, IR Recorder tsom mus rau kev sib txuas lus rov qab los ntawm Arduino mus rau Raspberry Pi

Yog li cov ntsiab lus ntawm txoj haujlwm no yuav yog lub ncauj lus rau lwm IBLE

Kauj Ruam 2: Yam Koj Xav Tau - Kho Vajtse

Yam Koj Xav Tau - Kho Vajtse
Yam Koj Xav Tau - Kho Vajtse
Yam Koj Xav Tau - Kho Vajtse
Yam Koj Xav Tau - Kho Vajtse

Kev ua haujlwm Raspberry Pi 2.0 - Kuv pom zoo txhim kho Ubuntu Mate vim nws muaj cov txheej txheem zoo dua suav nrog OpenLibre Chaw Haujlwm uas los ntawm txoj kev yog qhov tseem ceeb hauv kev sau cov ntawv qhia no, nyob ntawd ntawm Raspberry Pi.

Ib qho ntxiv, Pi, koj yuav xav tau cov sab nrauv hauv qab no:

  • Arduino Uno tus qauv ua haujlwm platform lossis clone
  • IR transmitters LED - Kuv tau siv lub npe hu ua Peb ceg ntawm Amazon.com
  • 330 lossis 220 Ohm resistors-Kuv tau siv 220 (xim xim Liab-Liab-Xim av) vim tias kuv muaj ntau qhov yooj yim
  • Lub rooj noj mov ib txwm muaj, cov khoom sib txuas, thiab PC nrog Arduino Ib puag ncig teeb tsa
  • Ib tus neeg sib tw xeem - xws li muaj nyob thoob plaws Samsung LED Saib nrog lub chaw taws teeb

Kauj Ruam 3: Yam Koj Xav Tau - Software

Txhawm rau kom tau txhua daim ua ke, cov software teeb tsa hauv qab no yuav tsum tau teeb tsa thiab khiav:

Ntawm Raspberry Pi, koj yuav tsum tau teeb tsa cov hauv qab no:

  • Arduino IDE - siv los tsim Sketch thiab nyem rau UNO
  • Python module rau Arduino - rau kev sib txuas lus txuas ntawm UNO thiab Pi
  • Python SignalR tus thov kev pabcuam tsev qiv ntawv - Koj tuaj yeem xa mus rau cov lus qhia txuas ntawm no

Lub tshuab Windows nrog rau ib puag ncig kev txhim kho hauv qab no tau teeb tsa:

  • Pub dawb Microsoft Visual Studio Express 2013 los tsim SignalR Hub thiab Web thov daim ntawv thov
  • Pub dawb ntawm SQL Server 2012 Qhia rau tsim thiab tsim cov ntaub ntawv rov qab kawg

A Windows Internet Information Server (IIS) Hosting ib puag ncig:

  • Thaum SignalR Hub thiab Web tus thov kev pabcuam tau tsim thiab sim, nws yuav tsum tau xa mus rau IIS Server hauv zos
  • Hauv kuv qhov xwm txheej, Kuv npaj yuav siv lub khoos phis tawj qub uas khiav Windows 7 nrog IIS ntawm kuv lub tsev network

NCO TSEG

Txhua cov lus qhia siv tau rau Python 2.7.x version. Version 3.0 yuav xav tau sau dua tshiab

Kauj Ruam 4: SQL Server Database

SQL Server Database
SQL Server Database

Cov txheej txheem txuas nrog qhia pom tus qauv ntawm SQL Server database yooj yim siv hauv daim ntawv thov no thiab tsuas muaj ob lub rooj.

Table AutoHubCode

Ob kab tseem ceeb hauv cov lus no yog:

AutoCodeKey - khaws cov neeg siv tus phooj ywg lub npe ntawm tus lej yuam sij

Txhua tus lej tus lej raug xa los ntawm tus neeg siv khoom siv tshuab - hauv peb qhov xwm txheej, khawm HTML los ntawm Lub Vev Xaib

AutoCodeVal - khaws cov nyoos IR Code ua ntu zus

Nov yog qhov tseeb IR code uas tau xa rov qab mus rau tus neeg siv khoom teb los ntawm SignalR Hub

Hauv qhov no, Python cov neeg siv sib txuas lus tas mus li rau Hub tau txais IR code ua ntu zus thiab xa nws hla Serial Port mus rau Arduino UNO

Table AutoHubLog

  • Nkag mus rau tus lej thov los ntawm tus neeg siv khoom siv tshuab.
  • Nov yog qhov ntsuas ntsuas seb leej twg thiab thaum twg siv lub kaw lus, thiab cov cai tau thov li cas

Raws li tau hais, Kuv tau siv SQL Server 2012 raws li kuv qhov chaw khaws ntaub ntawv xaiv. Koj tuaj yeem rov tsim qhov qauv yooj yim no ntawm lub platform sib txawv database xws li MySQL, Oracle, thiab lwm yam.

Txawm li cas los xij, SQL Script los tsim cov ntaub ntawv no tau txuas ntawm no

NCO TSEG

  1. Cov cai rau SignalR Hub tau tsim los txuas rau SQL Server 2012 database
  2. Ua haujlwm nrog cov ntaub ntawv sib txawv yuav txhais tau tias hloov pauv Hub kom siv tus neeg siv sib txawv database

Kauj Ruam 5: ASP. NET SignalR Hub Web Application

ASP. NET SignalR Hub Web Application
ASP. NET SignalR Hub Web Application
ASP. NET SignalR Hub Web Application
ASP. NET SignalR Hub Web Application

ASP. NET SignalR Hub Web Application sib koom ua ke ntawm cov hauv qab no raws li qhia hauv kab ntawv txuas nrog:

Ntu 1 - Lub SignalR Hub uas tau txais kev thov los ntawm thiab teb rau cov neeg siv khoom

Nqe 2, 4 - HTML tus vev xaib nplooj ntawv thiab nws yog cov ntawv uas tau sau ua ke ua ntej kawg ntawm Automation system thiab teeb tsa cov lus txib rau Automation Hub

Ntu 3 - jQuery SignalR APIs siv los ntawm tus neeg siv khoom HTML los sib txuas lus rau Automation Hub

Ntu 5 - Lub SignalR Hub tsis txuas lus ncaj qha rau lub hauv paus. Nws ua li ntawd ntawm cov chav kawm nruab nrab tsim los siv Cov Qauv Txheej Txheem

Cov chav kawm no suav daws cov ntaub ntawv keeb kwm yav dhau los ntawm daim ntawv thov kawg

Ntu 6 - Chav kawm Kev Pabcuam Database uas pab ua kom Nyeem -Sau cov haujlwm ntawm SQL Database (piav qhia yav dhau los) los ntawm kev siv Cov Qauv Txheej Txheem

ASP. NET thiab SignalR yog Microsoft thev naus laus zis thiab cov lus qhia no yuav coj koj mus txog qhov yooj yim SignalR daim ntawv thov raug tsim thiab siv li cas.

Qhov kuv tau tsim ntawm no yog ua raws cov hauv paus tau los ntawm qhov kev qhia no. Thaum xa tawm, daim ntawv thov yuav tsum zoo ib yam li lub vev xaib uas pom hauv daim duab thib ob

CEEB TOOM ntawm tus lej

Cov ntaub ntawv ZIP uas muaj daim ntawv tshem tawm ntawm cov cai tau muab txuas nrog

Cov ntawv tais ceev tseg yog raws li pom hauv qhov muag pom - txawm li cas los xij, txhua qhov ntawm cov chav kawm, thiab jQuery cov ntawv tau raug tshem tawm kom txo qhov loj ntawm cov ntawv txuas

Qhov kev pom zoo yog tias txoj cai no siv los ua phau ntawv qhia vim tias thaum koj tsim daim ntawv thov SignalR Web tshiab los ntawm kev ua raws cov lus qhia txuas saum toj no, cov tsev qiv ntawv tshiab jQuery tshiab thiab ASP. NET cov chav kawm yuav raug txiav ntxiv

Tsis tas li, cov ntawv xa mus rau jQuery cov ntawv hauv qhov index.html nplooj ntawv yuav tsum tau hloov pauv kom pom qhov hloov tshiab kawg ntawm jQuery SignalR cov tsev qiv ntawv cov neeg siv khoom uas yuav tau txais ntxiv thaum koj tsim koj li Kev Thov Web.

Thaum kawg, txoj hlua sib txuas yuav tsum tau hloov pauv kom phim koj cov ntaub ntawv hauv cov ntaub ntawv npe zoo li Web.config*

Kauj Ruam 6: Tus Python SignalR Service Client

Python SignalR Cov Neeg Siv Khoom
Python SignalR Cov Neeg Siv Khoom

Thaum lub HTML SignalR Client yog lub ntsej muag ntsib Cov Neeg Siv Khoom, Python Client yog daim ntawv thov rov qab kawg uas nws lub luag haujlwm tseem ceeb yog kom tau txais IR Code kis los ntawm Hub thiab xa nws mus rau Arduino UNO hla kev sib txuas lus.

Cov cai txuas nrog yog piav qhia tus kheej thiab tau sau tseg txaus los piav qhia nws txoj haujlwm

Raws li tau qhia hauv kev tshuaj ntsuam sib xyaw ua ke, HTML Client thiab Python Service cov neeg siv sib tham los ntawm SignalR Hub raws li hauv qab no:

  1. Tus neeg siv ntawm lub tshuab siv hluav taws xob teeb tsa cov lus txib rau Hub los ntawm kev nyem lub pob
  2. Txhua lub pob tau cuam tshuam nrog IR Key code thiab thaum nyem, tus lej no raug xa mus rau Hub
  3. Lub Hub tau txais cov cai no, txuas rau lub database thiab khaws cov nyoos IR teeb liab code thiab xa rov qab rau txhua tus neeg siv khoom sib txuas

    Nyob rau tib lub sijhawm, Hub sau cov npe nkag hauv AutoHubLog cov ntaub ntawv teev npe teev cov cai thiab hnub thiab sijhawm nws tau thov los ntawm cov neeg siv khoom deb

  4. Python cov neeg siv khoom tau txais IR Code thiab xa nws mus rau Arduino UNO rau kev ua ntxiv

Kauj Ruam 7: Arduino UNO IR Kev Tshaj Tawm Kab Duab thiab Code

Arduino UNO IR Kev Tshaj Tawm Kab Duab thiab Code
Arduino UNO IR Kev Tshaj Tawm Kab Duab thiab Code
Arduino UNO IR Kev Tshaj Tawm Kab Duab thiab Code
Arduino UNO IR Kev Tshaj Tawm Kab Duab thiab Code
Arduino UNO IR Kev Tshaj Tawm Kab Duab thiab Code
Arduino UNO IR Kev Tshaj Tawm Kab Duab thiab Code

Arduino Circuit raws li pom hauv qhov pom tau yooj yim zoo nkauj rau cov kab ke no thiab yog li ntawd tau piav qhia luv luv:

  • IR tsis muaj xim LED yuav tsum tau txuas rau Digital PIN 3 ntawm UNO - qhov no yog qhov xav tau ntawm IRLib Arduino tsev qiv ntawv
  • Cov laj thawj tau piav qhia hauv kuv IBLE ua ntej ntawm cloning cov chaw taws teeb hauv ntu uas cuam tshuam nrog IRLib lub tsev qiv ntawv
  • Ntsuab LED txuas nrog Digital PIN 4 yog lub ntsuas qhov muag pom thaum UNO tau txais txhua ntu ntawm IR Code los ntawm Python tus thov kev pabcuam khiav ntawm Raspberry Pi.
  • Muaj qhov teeb pom kev zoo ntawm LED no yuav lees paub tias Kev Sib Txuas Lus Ntawm Raspberry Pi thiab UNO tab tom ua haujlwm
  • Txhawm rau pab kom muaj kev sib txuas lus, UNO txuas nrog Raspberry Pi ntawm USB Chaw nres nkoj
  • Cov ntawv txuas nrog Arduino Sketch tau hais qhia txaus los piav qhia nws txoj haujlwm
  • Cov lus pom nyob rau sab saum toj ntawm txoj cai tseem piav qhia yuav ua li cas lub Circuit Court yuav tsum tau txuas nrog

NCO TSEG

Hauv kev xyaum, Arduino thiab Pi tuaj yeem koom ua ke txuas nrog lub zog USB lub zog muaj zog txaus los tsav Pi, Arduino thiab tseem xa lub teeb liab zoo ntawm IR LED

Kauj Ruam 8: Hooking Up thiab Testing System

Hooking Up thiab Xeem Qhov System
Hooking Up thiab Xeem Qhov System
Hooking Up thiab Xeem Qhov System
Hooking Up thiab Xeem Qhov System
Hooking Up thiab Xeem Qhov System
Hooking Up thiab Xeem Qhov System
  1. Tsim thiab siv ASP. NET SignalR Hub, tus neeg siv khoom HTML nrog rau SQL Server 2012 database rau Internet Cov Ntaub Ntawv Xov Xwm (IIS) ntawm koj lub network hauv tsev
  2. Nkag mus rau lub vev xaib thov los ntawm kev qhib lub HTML SignalR tus thov kev pab hla

    qhov URL rau nplooj ntawv no feem ntau yuav yog https:// yourComputer: port_number/

  3. Nyem ib lub pob ntawm lub vaj huam sib luag tswj, thiab yog tias daim ntawv thov tau siv kom raug, Hub yuav teb los ntawm kev xa rov qab IR Code thiab nthuav tawm nws hauv Grey vaj huam sib luag uas nyob ib sab ntawm cov tswj vaj huam sib luag

    Nco ntsoov! Koj yuav tsum tau thauj cov lej nkag rau hauv koj lub database los ntawm kev teeb tsa IR tus txais lub tsev qiv ntawv thiab khaws cov lej raws li tau piav qhia hauv kuv IBLE dhau los

  4. Txuas Arduino mus rau Raspberry Pi hla USB - qhib Arduino IDE ntawm Pi thiab xyuas kom tseeb tias UNO tuaj yeem tsim kev sib txuas nrog Pi

    cov kab lus qhia Arduino no yuav tsum pab koj kom ua tiav sai sai no

  5. Qhib Python code thiab hloov pauv hauv qab no raws li siv tau rau koj ib puag ncig

    • Serial Port chaw nyob ntawm koj UNO raws li tau txais los ntawm Kauj Ruam 4
    • URL ntawm Lub Chaw Sib Txuas SignalR kom phim koj li URL hauv zos los ntawm Kauj Ruam 2 - hauv qhov piv txwv no, nws yuav yog https:// yourComputer: port_number/signalr
  6. Thaum kawg, qhib Arduino Sketch hauv Arduino IDE ntawm Raspberry Pi thiab nyem rau UNO
  7. Muab lub rooj noj mov khob cij uas tuav lub Circuit Court nyob ze rau ntawm lub cuab yeej kom tswj tau - IR LED yuav tsum muaj kab pom kev pom meej nrog IR chaw txais chaw nres nkoj ntawm cov khoom siv
  8. Pib qhov program Python ntawm Raspberry Pi los ntawm nias F5 khawm ntawm Python IDLE tool bar
  9. Rov qab mus rau Cov Tswj Vaj Huam Sib Luag ntawm HTML cov haujlwm pabcuam (Kauj Ruam 2) thiab nyem lub pob (xws li Fais Fab On lossis Volume Up)

Yog tias cov txheej txheem tau teeb tsa kom raug, tom qab ntawd koj yuav tsum tuaj yeem nqa cov nplooj ntawv HTML ntawm koj lub xov tooj lossis ntsiav tshuaj thiab tswj hwm koj lub cuab yeej nrog cov nyees khawm ntawm koj nplooj ntawv HTML.

Kauj Ruam 9: Cov Txheej Txheem Ua

Qhov System hauv Kev Ua
Qhov System hauv Kev Ua
Qhov System hauv Kev Ua
Qhov System hauv Kev Ua
Qhov System hauv Kev Ua
Qhov System hauv Kev Ua
Qhov System hauv Kev Ua
Qhov System hauv Kev Ua

Cov kev pom pom saum toj no qhia Lub Tsev Automation System hauv kev ua thaum nws teeb tsa.

Txij li tshaj tawm IBLE no, Kuv tau txuas qhov kev sib tham los ntawm kev ntes ob peb IR Codes los ntawm kuv VIZIO LED TV

Raws li qhia ib sab ntawm ib sab nrog lub Hoobkas TV Chaw Taws Teeb nyob hauv thawj qhov muag pom, ob peb lub luag haujlwm tseem ceeb ntawm cov chaw taws teeb no tau tsim rau hauv Web UI nkag los ntawm kuv lub ntsiav tshuaj

Kev pom tom ntej pom cov ntsiav tshuaj nyob rau tom hauv ntej nrog TV nyob tom qab teb rau cov lus txib los ntawm Lub Vev Xaib interface:

  1. Fais fab OFF hais kom ua - TV tua
  2. Lub hwj chim ON hais kom ua - TV tig rau thiab lub cim "V" zoo li lub vijtsam muaj zog
  3. Mute ON hais kom ua - Kab rov tav tuaj nrog tus hais lus ntsiag to

Hauv txhua qhov kev sim, Grey cheeb tsam ib sab ntawm lub dashboard ntawm lub vijtsam ntsiav tshuaj qhia cov lus txib los ntawm tus neeg siv khoom, thiab cov lus teb xa rov qab los ntawm cov chaw taws teeb SignalR Hub

Kauj Ruam 10: Txhim Kho Cov Txheej Txheem Kev Siv Hluav Taws Xob thiab Kev Txhim Kho Ntxiv

Cov kab ke no tuaj yeem txuas ntxiv los ntawm kev ntxiv cov lej nkag los ntawm cov kab ke sib txawv. Thaum ntu no yooj yim, muaj ob yam ntxiv uas koj yuav tsum tau txiav txim siab.

Kev Txhim Kho 1 (Ceev): Ua haujlwm nrog IR Cov Cim ntawm qhov ntev sib txawv

  1. IR Cov Cai ntawm cov kab ke sib txawv tuaj nrog qhov ntev sib txawv, txawm tias ntawm ob yam khoom los ntawm tib lub chaw tsim khoom.

    Piv txwv li, hauv qhov no, IR code array ntev rau LED TV yog 67 whilst uas ntawm Samsung Sound Bar nyob ib puag ncig 87

  2. Uas txhais tau tias, yog tias kuv tau qhib lub Suab Bar ua ntej, IR tsis nyob hauv Arduino daim duab yuav tsum tau sau nrog IR Code ntu uas muaj 87 tus lej
  3. Ua raws li qhov no, yog tias kuv qhib lub TV LED, nws yuav ua tiav qhov IR Tsis Muaj array nrog tsuas yog 67 tus lej, tab sis seem 20 tus lej los ntawm kev ua haujlwm dhau los tseem yuav nyob ib puag ncig

Qhov tshwm sim? Lub TV LED tsis qhib vim tias IR Code Buffer tau ua tsis zoo los ntawm 20 tus lej ntxiv tsis tau ntxuav los ntawm kev ua haujlwm dhau los!

Kho 1 (txoj kev yooj yim tawm, tsis pom zoo)

Hloov kho Arduino Sketch raws li hauv qab no:

Hloov cov haujlwm hauv qab no hu hauv lub voj () {} ua haujlwm

transmitIRCode ();

rau kis IRCode (c);

Ua hloov pauv rau kev kos npe ntawm cov haujlwm saum toj no:

void transmitIRCode (int codeLen) {// RAWBUF tas li hloov nrog codeLen IRTransmitter. IRSendRaw:: xa (IRCodeBuffer, codeLen, 38); }

Thaum qhov no yooj yim, cov array yeej tsis tau txais kev tshem tawm kiag li thiab yog li qhov no tsis yog kev daws teeb meem huv

Kho 2 (Tsis nyuaj, pom zoo)

Tshaj tawm qhov hloov pauv ntxiv nyob rau sab saum toj ntawm Arduino Sketch, tom qab cov lus hais:

unsigned int EMPTY_INT_VALUE;

Ntxiv qhov no mus rau sab saum toj ntawm teeb tsa () muaj nuj nqi:

// Txais lub xeev ntuj ntawm qhov khoob tsis tau kos npe integer hloov pauv EMPTY_INT_VALUE = IRCodeBuffer [0];

Scroll cia thiab ntxiv qhov ua haujlwm tshiab rau kos duab tam sim tom qab transmitIRCode () muaj nuj nqi:

void clearIRCodeBuffer (int codeLen) {// Tshem tag nrho cov lej los ntawm kab // Nco tseg: teeb tsa cov ntsiab lus rau 0 tsis yog kev daws teeb meem! rau (int i = 1; i <= codeLen; i ++) {IRCodeBuffer [i-1] = EMPTY_INT_VALUE;}}

Thaum kawg, hu rau txoj haujlwm tshiab saum toj no ntawm qhov chaw hauv qab no hauv lub voj () muaj nuj nqi:

// Rov pib dua - Rov pib nyeem Serial PortclearIRCodeBuffer (c);…

Qhov no yog txoj hauv kev huv dua vim tias nws tau rov pib dua txhua qhov chaw hauv IR Tsis array uas tau muaj neeg nyob los ntawm qhov teeb meem IR Code tsis ntev los no yam tsis muaj dab tsi tshwm sim.

Kev Txhim Kho 2 (Muaj feem cuam tshuam ntau dua): Rov Rov Ua Dua IR Kev Tshaj Tawm rau qee yam khoom siv

Qee lub cuab yeej xav tau tib lub teeb liab xa mus ntau zaus txhawm rau teb Piv txwv: Hauv qhov no, Samsung Sound Bar xav kom tib tus lej xa ob zaug nrog qhov sib nrug ntawm 1 thib ob

Kev Txhim Kho hauv Lub Tswv Yim tau tham txog ntawm no vim nws tau koom nrog me ntsis thiab yuav xav tau kev sim

Ntxiv kev ua haujlwm rov ua haujlwm rau Ardunio Sketch yuav txhais tau tias koj yuav tsum nyem qhov Sketch txhua lub sijhawm koj ntxiv cov cuab yeej tshiab rau koj Lub Tsev Automation System

Hloov chaw, ntxiv qhov kev txhim kho no rau HTML SignalR tus thov thiab Python SignalR Service thov ua rau kev daws teeb meem ntau dua. Thiab qhov no tuaj yeem ua tiav hauv txoj cai raws li hauv qab no:

Hloov kho SignalR HTML tus thov kev pabcuam kom xa cov ntaub ntawv rov mus rau Hub

Qhib qhov index.html thiab kos tus nqi rov ua hauv HTML khawm zoo li:

tus nqi = "SMSNG-SB-PWR-ON" yuav dhau los ua tus nqi = "SMSNG-SB-PWR-ON_2_1000"

Qhov twg, 2 yog tus nqi rov ua dua thiab 1000 yog ncua tus nqi hauv milliseconds nruab nrab ntawm ob qhov rov ua dua

Thaum koj nyem rau ntawm lub pob no, Lub hauv paus SignalR yuav tau txais Cov Cai Tseem Ceeb+Rov Ua_Spec

Hloov kho SignalR Server sab txoj hauv kev los cais tawm tsuas yog Cov Cai Tseem Ceeb:

  • Siv Cov Cai Tseem Ceeb kom rov tau txais IR Code los ntawm cov ntaub ntawv li qub
  • Xa Cov Cai Tseem Ceeb+Rov Ua_Spec thiab IRCode rau SingalR Cov Neeg Siv Khoom li qub

Hloov kho Python SignalR Service Daim Ntawv Thov kom xa cov cim qhia siv qhov rov ua qhov tseem ceeb:

Qhib tus neeg siv Python thiab hloov kho ob txoj haujlwm hauv qab no:

def print_command_from_hub (buttonId, cmdSrc):

# cais qhov rov ua dua tus lej los ntawm buttonId tus nqi

def transmitToArduino (IRSignalCode, delim, endPrefix):

# teeb tsa ib pliag lossis rau lub voj kom xa cov teeb liab ntawm qhov xav tau zaus

  • Txoj kev no, Arduino tsis tas yuav tsum tau flashed ntau zaus
  • Txhua tus lej ntawm kev rov ua ntau zaus tuaj yeem tsim rau hauv cov kab ke no
  • Dhau li, yog tias koj siv UNO, muaj qhov txwv rau qhov loj koj Sketch tuaj yeem loj hlob rau!

Kauj Ruam 11: Paub Teeb Meem & Kev Nyab Xeeb Kev Nyab Xeeb

Raws li yog rooj plaub nrog cov txheej txheem tsim thawj zaug, qhov no muaj ob peb yam teeb meem uas tau tawm los thaum kuaj.

Qhov Teeb Meem 1: Tua cov lus txib kom ua tiav nrawm nrog ncua sijhawm tsawg dua li ib pliag ntawm khawm nyem ua rau lub kaw lus ua tsis tau zoo tom qab teb rau thawj ob peb zaug.

  • Rov pib dua Python SignalR tus neeg siv rov kho lub system rov qab mus rau kev ua haujlwm ib txwm muaj
  • Kev daws teeb meem tam sim yuav yog tshem tawm qhov tsis xav tau Debug cov txiaj ntsig hauv ob qho tib si, Python SignalR Client thiab tseem yog Arduino Sketch thiab rov ua cov kev ntsuas no
  • Lwm qhov chaw los saib mus rau yog Serial kev sib txuas lus nws tus kheej - nws puas tuaj yeem ntxiv cov cai kom yaug qhov nrawm?

Qhov ntawd tau hais tias, Kuv tau pom tias kuv lub TV tsis teb zoo rau nws lub Hoobkas nyob deb - yog li ntawd qhov xwm txheej ntawm IR kev sib txuas lus ntawm kuv lub TV kuj yuav yog qhov tseem ceeb ib yam.

Qhov Teeb Meem 2: Lub vijtsam HTML tsis teb rau khawm nyem tom qab lub sijhawm tsis ua haujlwm ntev

Feem ntau rov ua nplooj ntawv kho tus cwj pwm no - ua rau tus cwj pwm no txawm li cas los xij tseem tsis meej

SECURITY YUAV TSUM PAUB

Cov kab ke no tau tsim los rau hauv zos (hauv tsev) kev siv network nkaus xwb thiab tsis muaj kev tiv thaiv kev nyab xeeb tsim nyog yuav tsum tau siv hauv internet

Yog li nws tau pom zoo tias SignalR Hub raug xa mus rau lub tshuab hauv zos ntawm koj lub zej zog/hauv tsev network

Ua tsaug rau nyeem kuv IBLE thiab kuv vam tias koj yuav muaj kev lom zem!

Pom zoo: