An-diugh, mar thoradh air leasachadh luath microelectronics, seanalan conaltraidh, teicneòlasan eadar-lìn agus Artificial Intelligence, tha cuspair dachaighean snasail a’ fàs nas buntainniche. Tha taigheadas daonna air a dhol tro atharrachaidhean mòra bho Linn na Cloiche agus ann an àm Tionndadh Gnìomhachais 4.0 agus Eadar-lìn Rudan, tha e air fàs comhfhurtail, obrachail agus sàbhailte. Tha fuasglaidhean a’ tighinn chun mhargaidh a thionndaidheas àros no taigh dùthchail gu bhith nan siostaman fiosrachaidh iom-fhillte fo smachd bho àite sam bith san t-saoghal a’ cleachdadh fòn cliste. A bharrachd air an sin, chan fheum eadar-obrachadh inneal-daonna eòlas air cànanan prògramadh tuilleadh - le taing dha aithneachadh cainnt agus algorithms synthesis, bidh neach a ’bruidhinn ri dachaigh spaideil anns a’ chànan dhùthchasach aca.
Tha cuid de shiostaman dachaigh smart a tha air a’ mhargaidh an-dràsta nan leasachadh loidsigeach air siostaman sgrùdaidh bhidio sgòthan, agus thuig an luchd-leasachaidh gu robh feum air fuasgladh coileanta chan ann a-mhàin airson sgrùdadh, ach cuideachd airson a bhith a’ riaghladh nithean iomallach.
Bidh sinn a ’toirt thugaibh sreath de thrì artaigilean, a dh’ innseas dhut mu na prìomh phàirtean de shiostam dachaigh smart sgòthan, a chaidh a leasachadh gu pearsanta leis an ùghdar agus air a chuir an gnìomh. Tha a’ chiad artaigil air a choisrigeadh don uidheamachd teachdaiche crìochnachaidh a chaidh a chuir a-steach taobh a-staigh dachaigh spaideil, an dàrna fear gu ailtireachd an t-siostam stòraidh sgòthan agus giollachd dàta, agus mu dheireadh, an treas fear gu tagradh teachdaiche airson an siostam a riaghladh air innealan gluasadach agus pàipearachd.
Innealan dachaigh glic
An toiseach, bruidhnidh sinn mu mar a nì thu dachaigh spaideil a-mach à àros àbhaisteach, dacha no bothan. Gus seo a dhèanamh, mar riaghailt, feumar na h-innealan a leanas a chuir aig an taigh:
- mothachairean a bhios a’ tomhas diofar pharaimearan àrainneachd;
- actuators ag obair air nithean a-muigh;
- rianadair a bhios a’ dèanamh àireamhachadh a rèir tomhais mothachaidh agus loidsig freumhaichte, agus a’ toirt òrdughan do actuators.
Tha an dealbh a leanas a’ sealltainn diagram de dhachaigh spaideil, air a bheil mothachairean airson aodion uisge (1) anns an t-seòmar-ionnlaid, teòthachd (2) agus solais (3) anns an t-seòmar-cadail, socaid spaideil (4) sa chidsin agus a camara sgrùdaidh bhidio (5) anns an talla.
An-dràsta, thathas a’ cleachdadh mothachairean gun uèir a tha ag obair a’ cleachdadh protocolaidhean RF433, Z-Wave, ZigBee, Bluetooth agus WiFi. Is e na prìomh bhuannachdan aca furasta an stàladh agus an cleachdadh, a bharrachd air cosgais ìosal agus earbsachd, air sgàth Tha luchd-saothrachaidh a’ feuchainn ris na h-innealan aca a thoirt chun mhargaidh mhòr agus an dèanamh ruigsinneach don neach-cleachdaidh cuibheasach.
Tha mothachairean agus actuators, mar riaghailt, ceangailte tro eadar-aghaidh gun uèir ri rianadair dachaigh smart (6) - microcomputer sònraichte a bhios a ’cothlamadh na h-innealan sin gu lèir ann an aon lìonra agus a’ cumail smachd orra.
Ach, faodaidh cuid de fhuasglaidhean sensor, actuator agus rianadair a chur còmhla aig an aon àm. Mar eisimpleir, faodar pluga snasail a phrògramadh gus tionndadh air no dheth a rèir clàr-ama, agus faodaidh camara sgrùdaidh bhidio sgòthan bhidio a chlàradh stèidhichte air comharra lorgaire gluasad. Anns na cùisean as sìmplidh, faodaidh tu a dhèanamh às aonais rianadair fa leth, ach gus siostam sùbailte a chruthachadh le mòran shuidheachaidhean, tha feum air.
Gus rianadair dachaigh smart a cheangal ris an lìonra chruinneil, faodar router eadar-lìn cunbhalach (7) a chleachdadh, a tha air a bhith na inneal taighe cumanta o chionn fhada ann an dachaigh sam bith. An seo tha argamaid eile ann airson rianadair dachaigh smart - ma thèid an ceangal ris an eadar-lìn a chall, cumaidh an dachaigh smart ag obair mar as àbhaist le taing don bhloc loidsig a tha air a stòradh taobh a-staigh an rianadair, agus chan ann san t-seirbheis sgòthan.
Stiùiriche dachaigh glic
Tha an rianadair airson siostam dachaigh smart sgòthan air a bheilear a’ beachdachadh san artaigil seo air a leasachadh stèidhichte air microcomputer aon-bhòrd
Tha e glè shìmplidh a bhith a’ cruinneachadh an rianadair - tha am microcomputer (1) air a chuir a-steach ann an cùis plastaig (2), an uairsin tha cairt cuimhne 8 GB ann an cruth microSD le bathar-bog (3) agus rianadair lìonra USB Z-Wave (4) air an cur a-steach. na sliotan co-fhreagarrach. Tha an rianadair dachaigh smart ceangailte ris an t-solar cumhachd tro inneal-atharrachaidh cumhachd 5V, 2.1A (5) agus càball USB - meanbh-USB (6). Tha àireamh aithneachaidh sònraichte aig gach rianadair, a tha sgrìobhte anns an fhaidhle rèiteachaidh nuair a chaidh a chuir air bhog an toiseach agus a tha riatanach gus eadar-obrachadh le seirbheisean dachaigh smart sgòthan.
Chaidh am bathar-bog smachd dachaigh smart a leasachadh le ùghdar an artaigil seo stèidhichte air an t-siostam obrachaidh Linux Raspbian Stretch. Tha e air a dhèanamh suas de na prìomh fo-shiostaman a leanas:
- pròiseas frithealaiche airson eadar-obrachadh le uidheamachd dachaigh smart agus an sgòth;
- eadar-aghaidh cleachdaiche grafaigeach airson suidheachadh rèiteachaidh agus crìochan obrachaidh an rianadair;
- stòr-dàta airson rèiteachadh rianadair a stòradh.
Stòr-dàta tha rianadair dachaigh smart air a chuir an gnìomh stèidhichte air DBMS freumhaichte
GUI rianadair dachaigh smart air a leasachadh ann am PHP 7 a’ cleachdadh microframework
(cliog air an dealbh gus fhosgladh ann an rùn nas àirde)
Is e prìomh obair an eadar-aghaidh grafaigeach a bhith a’ ceangal uidheamachd dachaigh smart (camaran sgrùdaidh IP agus mothachairean) ris an rianadair. Bidh an aplacaid lìn a’ leughadh rèiteachadh agus staid làithreach an rianadair agus na h-innealan ceangailte ris bho stòr-dàta SQLite. Gus rèiteachadh an rianadair atharrachadh, bidh e a’ cur òrdughan smachd ann an cruth JSON tro eadar-aghaidh RESTful API de phròiseas an fhrithealaiche.
Pròiseas frithealaiche
Pròiseas frithealaiche - prìomh phàirt a bhios a’ coileanadh a h-uile prìomh obair air pròiseasan fiosrachaidh fèin-ghluasadach a tha mar bhunait airson dachaigh spaideil: a’ faighinn agus a’ giullachd dàta mothachaidh, a’ cur a-mach gnìomhan smachd a rèir an loidsig freumhaichte. Is e adhbhar pròiseas an fhrithealaiche eadar-obrachadh le uidheamachd dachaigh snasail, riaghailtean loidsigeach toraidh a chuir an gnìomh, òrdughan fhaighinn bhon eadar-aghaidh grafaigeach agus an sgòth. Tha am pròiseas frithealaiche anns an rianadair dachaigh smart air a bheilear a’ beachdachadh air a chuir an gnìomh mar thagradh ioma-snàithlean air a leasachadh ann an C ++ agus air a chuir air bhog mar sheirbheis air leth siostam siostam-obrachaidh Raspbian airson Linux.
Is iad na prìomh bhlocaichean de phròiseas an fhrithealaiche:
- Manaidsear Teachdaireachd;
- frithealaiche camara IP;
- frithealaiche inneal Z-Wave;
- Server riaghailtean loidsigeach riochdachaidh;
- Stòr-dàta de rèiteachadh an rianadair agus bloc de riaghailtean loidsigeach;
- RESTful frithealaiche API airson eadar-obrachadh leis an eadar-aghaidh grafaigeach;
- Neach-dèiligidh MQTT airson eadar-obrachadh leis an sgòth.
Tha blocaichean pròiseas frithealaiche air an cur an gnìomh mar snàithleanan fa leth, agus tha fiosrachadh eatorra air a ghluasad ann an cruth teachdaireachdan ann an cruth JSON (no structaran dàta a’ riochdachadh a’ chruth seo ann an cuimhne pròiseas).
Is e am prìomh phàirt den phròiseas frithealaiche manaidsear teachdaireachd, a bhios a’ ruith teachdaireachdan JSON gu gach bloc pròiseas frithealaiche. Tha na seòrsaichean de raointean fiosrachaidh teachdaireachd JSON agus na luachan as urrainn dhaibh gabhail ris air an liostadh sa chlàr:
seòrsa inneal
protocol
seòrsa teachdaireachd
Stàit inneal
an àithne
'chamara
onvif
dàta sensor
on
sruthadh (Air / dheth)
mothachadh
sgonn
an àithne
dheth
clàradh (Air / dheth)
buaidhiche
mqtt
Riaghailt gnìomhachas Logic
sruthadh (Air / dheth)
inneal (Cuir ris/Thoir air falbh)
loidsig gnìomhachais
Dàta rèiteachaidh
clàradh (Air / dheth)
bluetooth
Stàit inneal
mearachd
wifi
rf
Mar eisimpleir, tha teachdaireachd bho lorgaire gluasad camara a’ coimhead mar seo:
{
"vendor": "*****",
"version": "3.0.0",
"timestampMs": "1566293475475",
"clientType": "gateway",
"deviceId": "1616453d-30cd-44b7-9bf0-************",
"deviceType": "camera",
"protocol": "onvif",
"messageType": "sensorData",
"sensorType": "camera",
"label": "motionDetector",
"sensorData": "on"
}
Loidsig riochdachaidh
Gus teachdaireachd fhaighinn no a chuir bhon neach-cuairteachaidh, bidh bloc pròiseas an fhrithealaiche a’ gabhail ri teachdaireachdan de sheòrsa sònraichte. Tha ballrachd na riaghailt loidsigeach toraidh den t-seòrsa "Ma tha... an uairsin ...", air a thaisbeanadh ann an cruth JSON, agus ceangal ris an làimhseachadh teachdaireachd taobh a-staigh bloc pròiseas an fhrithealaiche. Mar eisimpleir, gus leigeil le frithealaiche camara IP òrdughan fhaighinn bhon GUI agus an sgòth, feumaidh tu an riaghailt a leanas a chur ris:
{
"if": {
"and": [{
"equal": {
"deviceId": "1616453d-30cd-44b7-9bf0-************"
}
},
{
"equal": {
"messageType": "command"
}
}
]
},
"then": {
"result": "true"
}
}
Ma tha na cumhaichean a tha air an sònrachadh ann an roimhe (taobh clì) tha na riaghailtean fìor, an uairsin tha e riaraichte mar thoradh (taobh deas), agus gheibh an neach-làimhseachaidh cothrom air corp teachdaireachd JSON. Tha an ro-làimh a’ toirt taic do ghnìomhaichean loidsigeach a bhios a’ dèanamh coimeas eadar paidhrichean luach-iuchrach JSON:
- co-ionann ri "co-ionann";
- chan eil e co-ionnan ri "not_equal";
- nas lugha "nas lugha";
- barrachd "nas motha";
- nas lugha na no co-ionann ri "less_or_equal";
- nas motha na no co-ionann ri “greater_or_equal”.
Faodaidh toraidhean coimeas a bhith co-cheangailte ri chèile a’ cleachdadh gnìomhaichean ailseabra Boolean:
- Agus "agus"
- NO "no";
- NACH "chan eil".
Mar sin, le bhith a 'sgrìobhadh gnìomhaichean agus operands ann an comharrachadh Pòlach, faodaidh tu suidheachaidhean gu math iom-fhillte a chruthachadh le àireamh mhòr de pharamadairean.
Tha an aon inneal, stèidhichte air teachdaireachdan JSON agus riaghailtean toraidh ann an cruth JSON, air a chleachdadh anns a’ bhloc frithealaiche loidsig toraidh gus eòlas a riochdachadh agus co-dhùnadh loidsigeach a dhèanamh a ’cleachdadh dàta mothachaidh bho luchd-mothachaidh dachaigh smart.
A’ cleachdadh tagradh gluasadach, bidh an neach-cleachdaidh a’ cruthachadh shuidheachaidhean a rèir am bu chòir don dachaigh spaideil obrachadh. Mar eisimpleir: “Ma tha an sensor airson an doras aghaidh fhosgladh air a phiobrachadh, tionndaidh air an t-solas anns an trannsa". Bidh an tagradh a ’leughadh aithnichearan mothachairean (sensor fosglaidh) agus actuators (socaid smart no lampa snasail) bhon stòr-dàta agus a’ gineadh riaghailt loidsigeach ann an cruth JSON, a thèid a chuir chun rianadair dachaigh smart. Thèid an uidheamachd seo a dheasbad nas mionaidiche anns an treas artaigil den t-sreath againn, far am bruidhnidh sinn mun iarrtas teachdaiche airson a bhith a ’riaghladh dachaigh spaideil.
Tha an uidheamachd loidsig toraidh air a bheilear a’ beachdachadh gu h-àrd air a chuir an gnìomh a’ cleachdadh an leabharlann
void CRuleEngine::Process(PProperties pFact)
{
m_pActions->clear();
rapidjson::Reader reader;
for(TStringMap::value_type& rRule : m_Rules)
{
std::string sRuleId = rRule.first;
std::string sRuleBody = rRule.second;
CRuleHandler ruleHandler(pFact);
rapidjson::StringStream ruleStream(sRuleBody.c_str());
rapidjson::ParseResult parseResult = reader.Parse(ruleStream, ruleHandler);
if(!parseResult)
{
m_Logger.LogMessage(
NLogger2::ePriorityLevelError,
std::string("JSON parse error"),
"CRuleEngine::Process()",
std::string("RuleId: ") + sRuleId);
}
PProperties pAction = ruleHandler.GetAction();
if(pAction)
{
pAction->Set("ruleId", sRuleId);
m_pActions->push_back(pAction);
}
}
}
tha e pFaic - structar anns a bheil paidhrichean prìomh luach bho theachdaireachd JSON, m_ Riaghailtean - sreath de riaghailtean toraidh. Thathas a’ dèanamh coimeas eadar an teachdaireachd a tha a’ tighinn a-steach agus an riaghailt toraidh anns a’ ghnìomh reader.Parse(riaghailt Sruth, Riaghailt Handler)càite fear-riaghailt na nì anns a bheil loidsig Boolean agus gnìomhaichean coimeas. sRuilId - aithnichear riaghailt sònraichte, le taing dha bheil e comasach riaghailtean a stòradh agus a dheasachadh taobh a-staigh stòr-dàta rianadair dachaigh smart. m_Gnìomhan - sreath le toraidhean co-dhùnadh loidsigeach: teachdaireachdan JSON anns a bheil toraidhean bhon bhunait riaghailt agus air an cur nas fhaide chun mhanaidsear teachdaireachd gus an urrainn dha snàithleanan an neach-clàraidh an làimhseachadh.
Tha coileanadh RapidJSON an coimeas ris a’ ghnìomh strlen(), agus tha na riatanasan as lugha de ghoireasan siostam a’ ceadachadh an leabharlann seo a chleachdadh ann an innealan freumhaichte. Leigidh cleachdadh teachdaireachdan agus riaghailtean loidsigeach ann an cruth JSON dhut siostam iomlaid fiosrachaidh sùbailte a chuir an gnìomh eadar a h-uile pàirt den rianadair dachaigh smart.
Sensors Z-Wave agus Actuators
Is e am prìomh bhuannachd a tha aig dachaigh spaideil gum faod e diofar pharaimearan na h-àrainneachd a-muigh a thomhas gu neo-eisimeileach agus gnìomhan feumail a choileanadh a rèir an t-suidheachaidh. Gus seo a dhèanamh, tha mothachairean agus actuators ceangailte ri rianadair dachaigh smart. Anns an dreach làithreach, is iad sin innealan gun uèir a tha ag obair a’ cleachdadh a’ phròtacal
Gheibh thu a-nis àireamh meadhanach mòr de dhiofar innealan Z-Wave air a’ mhargaidh. Bheir sinn sùil air beagan eisimpleirean:
- Faodaidh socaid smart Zipato PAN16 na paramadairean a leanas a thomhas: caitheamh dealain (kWh), cumhachd (W), bholtadh (V) agus sruth (A) anns an lìonra dealain. Tha tionndadh togte ann cuideachd leis an urrainn dhut smachd a chumail air an inneal dealain ceangailte;
- Bidh an sensor aodion Neo Coolcam a’ lorg gu bheil lionn air a dhòrtadh ann le bhith a’ dùnadh fiosan an probe iomallach;
- Tha an sensor ceò Zipato PH-PSG01 air a phiobrachadh nuair a thèid mìrean ceò a-steach don t-seòmar anailis gas;
- Bidh an sensor gluasad Neo Coolcam a’ dèanamh anailis air rèididheachd infridhearg ann am bodhaig an duine. A bharrachd air an sin tha sensor solais (Lx);
- Bidh multisensor Philio PST02-A a ’tomhas teòthachd (°C), solas (%), fosgladh dorais, làthaireachd neach san t-seòmar;
- Rianadair lìonra Z-Wave USB Stick ZME E UZB1, ris a bheil mothachairean ceangailte.
Tha e glè chudromach gum bi na h-innealan agus an rianadair ag obair aig an aon tricead, air dhòigh eile chan fhaic iad a chèile aig an àm ceangail. Faodar suas ri 232 inneal a cheangal ri aon rianadair lìonra Z-Wave, a tha gu leòr airson àros no taigh dùthchail. Gus an raon còmhdaich lìonra a-staigh a leudachadh, faodar socaid snasail a chleachdadh mar ath-chraoladh chomharran.
Anns a’ phròiseas frithealaiche rianadair dachaigh smart a chaidh a dheasbad sa pharagraf roimhe seo, tha uallach air frithealaiche Z-Wave airson eadar-obrachadh le innealan Z-Wave. Bidh e a’ cleachdadh leabharlann gus fiosrachadh fhaighinn bho luchd-mothachaidh
{
"vendor": "*****",
"version": "3.0.0",
"timestampMs": "1566479791290",
"clientType": "gateway",
"deviceId": "20873eb0-dd5e-4213-a175-************",
"deviceType": "sensor",
"protocol": "zwave",
"messageType": "sensorData",
"homeId": "0xefa0cfa7",
"nodeId": "20",
"sensorType": "METER",
"label": "Voltage",
"sensorData": "229.3",
"units": "V"
}
Thèid an uairsin a chuir air adhart gu manaidsear teachdaireachd pròiseas an fhrithealaiche gus am faigh snàithleanan an neach-clàraidh e. Is e am prìomh neach-clàraidh am frithealaiche loidsig riochdachaidh, a tha a rèir luachan raon teachdaireachd ann an ro-innleachdan nan riaghailtean loidsig. Thèid na toraidhean co-dhùnaidh anns a bheil òrdughan smachd a chuir air ais chun mhanaidsear teachdaireachd agus às an sin rachaibh gu frithealaiche Z-Wave, a bhios gan còdachadh agus gan cur gu rianadair USB lìonra Z-Wave. An uairsin bidh iad a 'dol a-steach don actuator, a bhios ag atharrachadh staid nithean àrainneachd, agus mar sin bidh an dachaigh spaideil a' coileanadh obair fheumail.
(cliog air an dealbh gus fhosgladh ann an rùn nas àirde)
Tha ceangal innealan Z-Wave air a dhèanamh ann an eadar-aghaidh grafaigeach rianadair dachaigh smart. Gus seo a dhèanamh, rachaibh gu duilleag le liosta de dh’ innealan agus cliog air a ’phutan“ Cuir ”. Bidh an àithne cuir ris tro eadar-aghaidh RESTful API a’ dol a-steach don phròiseas frithealaiche agus an uairsin ga chuir leis a ’mhanaidsear teachdaireachd chun t-seirbheisiche Z-Wave, a chuireas rianadair USB lìonra Z-Wave ann am modh sònraichte airson innealan a chuir ris. An uairsin, air an inneal Z-Wave feumaidh tu sreath de phreasan sgiobalta a dhèanamh (3 preas taobh a-staigh 1,5 diogan) den phutan seirbheis. Bidh an rianadair USB a’ ceangal an inneal ris an lìonra agus a’ cur fiosrachadh mu dheidhinn gu frithealaiche Z-Wave. Bidh sin, an uair sin, a’ cruthachadh inntrig ùr ann an stòr-dàta SQLite le paramadairean an inneil ùir. Às deidh ùine shònraichte, tillidh an eadar-aghaidh grafaigeach gu duilleag liosta inneal Z-Wave, leugh fiosrachadh bhon stòr-dàta agus seallaidh e an inneal ùr air an liosta. Bidh gach inneal a’ faighinn a aithnichear sònraichte fhèin, a tha air a chleachdadh ann an riaghailtean co-dhùnaidh toraidh agus nuair a bhios iad ag obair san sgòth. Tha obrachadh an algairim seo air a shealltainn anns an diagram UML:
(cliog air an dealbh gus fhosgladh ann an rùn nas àirde)
A’ ceangal camarathan IP
Tha an siostam dachaigh smart sgòthan air a bheilear a’ beachdachadh san artaigil seo na ùrachadh air an t-siostam sgrùdaidh bhidio sgòthan, cuideachd air a leasachadh leis an ùghdar, a tha air a bhith air a ’mhargaidh airson grunn bhliadhnaichean agus aig a bheil mòran ionadan san Ruis.
Airson siostaman sgrùdaidh bhidio sgòthan, is e aon de na fìor dhuilgheadasan an taghadh cuibhrichte de uidheamachd leis an urrainnear amalachadh a dhèanamh. Tha am bathar-bog le uallach airson ceangal ris an sgòth air a chuir a-steach don chamara bhidio, a tha sa bhad a ’cur fìor iarrtasan air a’ bhathar-cruaidh aige - am pròiseasar agus an ìre de chuimhne an-asgaidh. Tha seo gu ìre mhòr a’ mìneachadh prìs nas àirde camarathan CCTV sgòthan an taca ri camarathan IP àbhaisteach. A bharrachd air an sin, tha feum air ìre fhada de cho-rèiteachadh le companaidhean saothrachaidh camara CCTV gus faighinn gu siostam faidhle a’ chamara agus na h-innealan leasachaidh riatanach uile.
Air an làimh eile, tha protocolaidhean àbhaisteach aig a h-uile camara IP ùr-nodha airson eadar-obrachadh le uidheamachd eile (gu sònraichte, clàran bhidio). Mar sin, tha cleachdadh rianadair air leth a bhios a’ ceangal tro phròtacal àbhaisteach agus a’ craoladh sruthan bhidio bho chamarathan IP chun sgòth a’ toirt buannachdan mòra farpaiseach airson siostaman sgrùdaidh bhidio sgòthan. A bharrachd air an sin, ma tha an neach-dèiligidh air siostam sgrùdaidh bhidio a chuir a-steach mu thràth stèidhichte air camarathan IP sìmplidh, bidh e comasach a leudachadh agus a thionndadh gu bhith na dhachaigh smart sgòth làn-chuimseach.
Is e am protocol as mòr-chòrdte airson siostaman sgrùdaidh bhidio IP, a tha a-nis le taic bho luchd-saothrachaidh camara IP gun eisgeachd
$ wsdl2h -o onvif.h
https://www.onvif.org/ver10/device/wsdl/devicemgmt.wsdl
https://www.onvif.org/ver10/events/wsdl/event.wsdl
https://www.onvif.org/ver10/media/wsdl/media.wsdl
https://www.onvif.org/ver20/ptz/wsdl/ptz.wsdl
$ soapcpp2 -Cwvbj -c++11 -d cpp_files/onvif -i onvif.h
Mar thoradh air an sin, gheibh sinn seata de fhaidhlichean bann-cinn “*.h” agus stòr “*.cpp” ann an C ++, a dh’ fhaodar a chuir gu dìreach ann an tagradh no leabharlann air leth agus a chuir ri chèile a ’cleachdadh an inneal-cruinneachaidh GCC. Air sgàth an iomadh gnìomh, tha an còd mòr agus feumach air optimization a bharrachd. Tha coileanadh gu leòr aig microcomputer modal Raspberry Pi 3 B + gus an còd seo a chuir an gnìomh, ach ma tha feum air an còd a chuir gu àrd-ùrlar eile, feumar ailtireachd pròiseasar ceart agus goireasan siostam a thaghadh.
Tha camarathan IP a bheir taic do inbhe ONVIF, nuair a bhios iad ag obair air lìonra ionadail, ceangailte ri buidheann sònraichte multicast leis an t-seòladh 239.255.255.250. Tha protocol ann
Bidh eadar-aghaidh grafaigeach an rianadair dachaigh smart a’ cur an gnìomh gnìomh sgrùdaidh airson camarathan IP ann am PHP, a tha gu math goireasach nuair a bhios tu ag eadar-obrachadh le seirbheisean lìn tro theachdaireachdan XML. Nuair a bhios tu a’ taghadh nithean clàr Innealan > Camaraichean IP > Sganadh Tha an algairim airson camarathan IP a lorg air a chuir air bhog, a’ taisbeanadh an toradh ann an cruth clàr:
(cliog air an dealbh gus fhosgladh ann an rùn nas àirde)
Nuair a chuireas tu camara ris an rianadair, faodaidh tu na roghainnean a shònrachadh a rèir an eadar-obrachadh leis an sgòth. Cuideachd aig an ìre seo, thèid aithnichear inneal sònraichte a thoirt dha gu fèin-ghluasadach, leis am bi e furasta aithneachadh nas fhaide air adhart san sgòth.
An ath rud, thèid teachdaireachd a chruthachadh ann an cruth JSON anns a bheil a h-uile paramadair den chamara a bharrachd agus air a chuir gu pròiseas frithealaiche an rianadair dachaigh smart tro àithne RESTful API, far a bheil paramadairean a’ chamara air an còdachadh agus air an sàbhaladh ann an stòr-dàta SQLite a-staigh, agus tha iad cuideachd air a chleachdadh airson na snàithleanan giullachd a leanas a chuir air bhog:
- stèidheachadh ceangal RTSP gus sruthan bhidio is claisneachd fhaighinn;
- transcoding claisneachd bho chruthan G.711 mu-Law, G.711 A-Law, G.723, msaa. gu cruth AAC;
- a’ tar-chur sruthan bhidio ann an cruth H.264 agus claisneachd ann an cruth AAC a-steach do shoitheach FLV agus ga chuir chun sgòth tro phròtacal RTMP;
- stèidheachadh ceangal ri ceann-uidhe lorgaire gluasad camara IP tro phròtacal ONVIF agus a bhith ga bhòtadh bho àm gu àm;
- bho àm gu àm a’ gineadh dealbh ro-shealladh mion-dhealbh agus ga chuir chun sgòth tro phròtacal MQTT;
- clàradh ionadail de shruthan bhidio is claisneachd ann an cruth faidhlichean fa leth ann an cruth MP4 air cairt SD no Flash den rianadair dachaigh smart.
Gus ceangal a stèidheachadh le camarathan, transcode, pròiseas agus clàradh sruthan bhidio ann am pròiseas an fhrithealaiche, thathas a’ cleachdadh gnìomhan bhon leabharlann
Anns an deuchainn deuchainn coileanaidh, chaidh 3 camarathan a cheangal ris an rianadair:
- HiWatch DS-I114W (rùn - 720p, cruth teannachaidh - H.264, bitrate - 1 Mb/s, fuaim G.711 mu-Law);
- Microdigital MDC-M6290FTD-1 (rùn - 1080p, cruth teannachaidh - H.264, bitrate - 1 Mb/s, gun fhuaim);
- Dahua DH-IPC-HDW4231EMP-AS-0360B (rùn - 1080p, cruth teannachaidh - H.264, bitrate - 1.5 Mb / s, claisneachd AAC).
Chaidh na trì sruthan a chuir a-mach aig an aon àm don sgòth, chaidh tar-chur claisneachd a dhèanamh bho dìreach aon chamara, agus chaidh clàradh tasglann ionadail a chiorramachadh. Bha an luchd CPU timcheall air 5%, bha cleachdadh RAM 32 MB (gach pròiseas), 56 MB (iomlan a’ toirt a-steach OS).
Mar sin, faodar timcheall air 20 - 30 camara a cheangal ris an rianadair dachaigh smart (a rèir rùn agus bitrate), a tha gu leòr airson siostam sgrùdaidh bhidio airson taigh beag trì-sgeulachd no taigh-bathair beag. Airson gnìomhan a dh ’fheumas coileanadh nas fheàrr, faodaidh tu lìon a chleachdadh le pròiseasar Intel ioma-cridhe agus Linux Debian Sarge OS. Tha an rianadair a’ dol tro dheuchainn deuchainn an-dràsta, agus thèid dàta mu a choileanadh ùrachadh.
Eadar-obrachadh leis an sgòth
Bidh dachaigh smart stèidhichte air sgòthan a’ stòradh dàta luchd-cleachdaidh (tomhais bhidio is mothachaidh) san sgòth. Thèid ailtireachd stòradh neòil a dheasbad nas mionaidiche san ath artaigil san t-sreath againn. A-nis bruidhnidh sinn mun eadar-aghaidh airson teachdaireachdan fiosrachaidh a chuir bhon rianadair dachaigh smart chun sgòth.
Tha stàitean innealan ceangailte agus tomhasan mothachaidh air an gluasad tron phròtacal
- QoS 0 - aon uair aig a’ char as àirde (gun ghealltanas lìbhrigidh);
- QoS 1 - co-dhiù aon uair (le dearbhadh lìbhrigidh);
- QoS 2 - dìreach aon turas (le dearbhadh lìbhrigidh a bharrachd).
Anns a 'chùis againn, bidh sinn a' cleachdadh
Gus teachdaireachdan a chuir a-mach mu inbhe rianadair dachaigh smart, thathas a’ cleachdadh inneal teachdaireachdan sàbhalaidh
Chaidh an neach-dèiligidh MQTT a leasachadh stèidhichte air buileachadh an leabharlainn
Bithear a’ cur sruthan meadhanan H.264 + AAC chun sgòth tro phròtacal RTMP, far a bheil buidheann de luchd-frithealaidh mheadhanan an urra ri bhith gan giullachd agus gan stòradh. Gus an luchd anns a’ bhraisle a sgaoileadh gu dòigheil agus an frithealaiche meadhanan as lugha a thaghadh, bidh rianadair na dachaigh spaideil a’ dèanamh iarrtas tòiseachaidh don neach-cothromachaidh luchdan sgòthan agus dìreach às deidh sin a’ cur sruth nam meadhanan air falbh.
co-dhùnadh
Rinn an artaigil sgrùdadh air aon bhuileachadh sònraichte de rianadair dachaigh smart stèidhichte air microcomputer Raspberry Pi 3 B +, as urrainn fiosrachadh fhaighinn, a phròiseasadh agus uidheamachd smachd tro phròtacal Z-Wave, eadar-obrachadh le camarathan IP tro phròtacal ONVIF, agus cuideachd iomlaid dàta agus òrdughan leis an sgòth. seirbheis tro phròtacalan MQTT agus RTMP. Chaidh einnsean loidsig toraidh a leasachadh stèidhichte air coimeas eadar riaghailtean loidsigeach agus fìrinnean air an taisbeanadh ann an cruth JSON.
Tha an rianadair dachaigh smart an-dràsta a’ dol air adhart gu deuchainn aig grunn làraich ann am Moscow agus sgìre Moscow.
Tha an ath dhreach den rianadair an dùil seòrsachan innealan eile a cheangal (RF, Bluetooth, WiFi, uèirleas). Airson goireasachd luchd-cleachdaidh, thèid an dòigh-obrach airson mothachairean agus camarathan IP a cheangal a ghluasad chun tagradh gluasadach. Tha beachdan ann cuideachd airson còd pròiseas an fhrithealaiche a bharrachadh agus am bathar-bog a ghluasad chun t-siostam obrachaidh
Source: www.habr.com