Vor ein paar Wochen erschien in unserem Chat diese Nachricht:

Und wenig später - das ist:

Der Autor der Nachrichten ist Zhenya, Programmierer, Leiter der Schulungsabteilung und Elektronikingenieur. Im Alter von 5 Jahren bemerkte er, dass die Glühbirne aufleuchtet, wenn Sie einen Motor aus einem Kassettenrekorder ziehen, eine Glühbirne daran anschließen und ihn einschalten. Um sechs - wenn der Motor die Polarität der Verbindung umkehrt, dreht er sich in die andere Richtung. Mit 18 Jahren trat er am Polytechnic in Measuring Innovative Technologies ein. Und mit 24 kam er zur Arbeit bei Sibiriks.
Dies liegt daran, dass das Ziel des gesamten Unternehmens nicht das Smart House und die Wetterstation als solche ist. Das Ziel ist es, Ihre Hände zu kratzen (weil es juckt) und zu verhindern, dass sie oxidieren (wegen der Goldlegierung). Alle, die sich fragen, warum sie Zeit verbringen sollten, wenn Sie nur solche Geräte kaufen können, gehen zur Forest-DNCom. Und für diejenigen, die sich für das Thema DIY-Elektronik interessieren (oder DIY-Elektronik, die auch nicht beschämend ist), können Sie weiter scrollen.
Es scheint mir, dass jeder Mensch neben der Arbeit auch ein Hobby haben sollte. Mach etwas mit deinen eigenen Händen. Dies ist eine gute emotionale Entladung (die Hauptsache ist, sich nicht in eine Routine zu verwandeln - bei der Arbeit, auch wenn sie so abwechslungsreich und interessant ist wie das Programmieren), Routine ist fast unvermeidlich, und ja, für Ihr Hobby). Das Interessanteste ist die Symbiose, wenn Ihr Hobby nützlich und geschäftlich gefragt wird.
- Vladimir Zavertylov, Leiter von Sibiriks Studio
Arduino
Zhenya hat vor zweieinhalb Jahren die erste Version des Smart Home auf Arduino hergestellt.
Arduino ist eine kleine Platine mit einem Mikrocontroller, einem Speicher und Kontakten, an die Sie Lampen, Motoren, Sensoren und im Allgemeinen alles anschließen können, was mit Elektrizität funktioniert. Sie schreiben ein C ++ - Programm, laden es in den Speicher des Arduino-Mikrocontrollers und steuern alle angeschlossenen Geräte. So entstehen coole Gadgets - zum Beispiel ein Bewässerungssystem für ein Sommerhaus oder ein Roboter, der Ihnen Hausschuhe bringt.

Das erste Thema, das Eugene auf Arduino gemacht hat, ist ein Spielzeug. Zwei Sensoren, zwei Teilnehmer. Jeder hält eine Hand über seinen Sensor. Wenn das Spielzeug eingelegt ist, müssen Sie Ihre Hand scharf entfernen. Das Spielzeug misst die Reaktionszeit bis zu 100 Sekunden und sagt, wer der Champion ist. Mit seiner Frau gehackt. Praktischerweise - wer verliert, spült das Geschirr).
Als mit Arduino alles klar wurde, beschloss Eugene natürlich, ein Smart House (einen Elektronikingenieur) zu bauen. Ich habe ein Sicherheitssystem (Bewegungssensor und Türöffnungssensor) und ein Thermometer (DHT11-Temperatur- und Feuchtigkeitssensor) an Arduino angeschlossen und war nicht zufrieden. Die Kommunikation zwischen allen Geräten erfolgte über einen 433-MHz-Funkkanal und erwies sich als instabil. Zhenya kämpfte mit den Funksignalen des zweiten Monats und beschloss dann, nicht zu kämpfen, sondern den Smart-Home-Server auf dem Raspberry Pi neu zu gestalten.
Himbeer pi
Raspberry Pi ist bereits ein vollwertiger Computer. Ja, Single Board. Ja, die Größe einer Kreditkarte. Ja, die Leistung ist modernen Großcomputern weit unterlegen. Es kann jedoch das Linux-Betriebssystem ausführen. Dies bedeutet, dass Sie von C ++ zu höheren Sprachen wechseln können - Java Script, PHP. Und dies sind Zhenyas Muttersprachen. Am wichtigsten ist jedoch, dass Sie mit dem Raspberry Pi 433 Funksignalen entkommen und zu all dem bekannten und beliebten WLAN wechseln können, das stabil funktioniert.

Design
Normalerweise sind Sie entweder Elektronikingenieur oder Designer. Wie wir uns erinnern, hat sich Eugene bereits im Alter von 5 Jahren dafür entschieden, daher gab es Probleme mit dem Design. Aber nicht lange. Denn bald ging er zum CEO von Sibiriks und bat um Hilfe. Einen Monat später wurde die Benutzeroberfläche von Smart Home bereits von unserem Designer gezeichnet.









Das System
Zhenya hat das System in 4 Monaten geschrieben. Arbeitete ungefähr 2,5 Stunden am Tag. Eineinhalb Stunden vor der Arbeit (er stand früh auf, weil er abends einen Sohn hatte, Hausarbeiten, mit seiner Frau Civilization spielte) und eine Stunde während des Mittagessens bei der Arbeit.
Die Idee war, dass das System unbegrenzt skaliert werden kann. Er ist jetzt ein einfacher Typ und benötigt nur grundlegende Funktionen in einem intelligenten Haus (Wetterstation, Sicherheitssystem, Videoüberwachung). Aber wenn er es morgen satt hat, Knöpfe und Schalter zu drücken, und er möchte, dass die Beleuchtung ihm folgt, der Ofen Baumwolle einschaltet und die automatischen Jalousien an den Fenstern in der Sonne schließen, sollte er in der Lage sein, all diese Funktionen zu nutzen.
Daher ist das System folgendermaßen organisiert: Sie erstellen im Smart Home einen Ordner mit einem Modul, beschreiben dessen Funktionsweise und lassen sich problemlos in das System integrieren. Jetzt gibt es 9 Module. Es gibt physische Module (solche mit einem physischen Gerät) und logische Module (solche, die für das Funktionieren des Systems erforderlich sind).
Funktionell
Wetterstation
Für die Wetterstation hat Zhenya 4 Hauptparameter verwendet, die es ermöglichen zu verstehen, ob Sie sterben oder nicht (Temperatur, Luftfeuchtigkeit, Luftdruck, Kohlendioxidkonzentration in der Luft). Die Schaffung einer Wetterstation wurde vom Generaldirektor des Studios unter der Bedingung gesponsert, dass Zhenya eine weitere solche im Studio herstellen wird (bereits fertig). Bei uns ist es über WLAN nicht mit dem Smart Home verbunden, sondern mit dem Zabbix, einem Serverüberwachungssystem, das verschiedene Parameter von der Festplattentemperatur bis zur Netzwerklast überwacht und alles in Form von schönen Grafiken anzeigt. Jetzt gibt es auch eine grafische Darstellung der Temperatur im Büro.
Wir wollten einen CO2-Sensor an unseren Zabbix anschließen, ihn an ein Plasma abgeben und die Atmosphäre überwachen. Die allerersten Experimente zeigten, dass die Montageschraubenhersteller den Zufluss zu uns so lala montierten. Mit einem elektronischen Endoskop fanden wir heraus, dass der Zufluss durch einen kleinen Riss im Abstellgleis des Gebäudes ging (es ist relativ neu). Mit obszönen Worten verfluchten wir den Turm und montierten alles menschlich wieder. Jetzt, am Morgen, zeigt der Sensor CO2 im Bereich von 500 an, zum Abendessen steigt er auf 800, was im Allgemeinen normal ist.
- Vladimir Zavertylov, Leiter von Sibiriks Studio
Videoüberwachung
Als sie CCTV-Kameras in Zhenins Haus installierten, die über die Telefonanwendung überwacht werden können, stellte sich heraus, dass sie auf einem sehr beliebten Dienst - einem Makroskop - hergestellt wurden und über API-Zugriff verfügen. Zhenya hat Überwachungskameras an sein Smart Home angeschlossen. Es ist lustig, dass sie im Smart House besser funktionieren als in der Anwendung. Die Anwendung ist wild dumm. Und im Smart Home öffnen sich die Kameras.
Sicherheit
Die letzte Person, die das Haus verlässt, drückt den Knopf und die Systemarme. Wenn jemand ankommt, versteht der Bewegungssensor dies. Das System beginnt zu wählen, z. B. Sicherheit deaktivieren oder ich schreie gerade. Um die Sicherheit zu deaktivieren, müssen Sie Ihren elektronischen Schlüssel anbringen, das System erkennt ihn und beruhigt sich.
Ereignisse
Hier werden alle vom System registrierten Ereignisse angezeigt.
Das System
Hier sehen Sie die Systemparameter: Prozessortemperaturdiagramm, IP-Adresse, Prozessorlast, Batterie.
Szenarien
Es enthält die Reaktion des Systems auf ein Ereignis. Reaktionen werden von einem Computer aus eingestellt.
Gehäuse
Der Fall ist das Ding, das 5 Stunden entwickelt und 28 Stunden gedruckt wurde. Es wurde auf einem alten 3D-Heimdrucker gedruckt. Als Referenz - wenn der Druck etwa 4 Stunden dauert, dauert es bereits lange. Und hier - 28. Es dauerte 16 Stunden bis zum Ende des Falles. Oben - 6. Dies ist eine Party für den ganzen Tag - Sie starten einen 3D-Drucker und er druckt, Sie können nicht unterbrechen. Wenn das Licht beispielsweise bei 98% des Drucks erlischt, werfen Sie den Kunststoff nur 15 Stunden lang. Zum Glück ist dies nicht geschehen. Eine andere Sache passierte: Aufgrund eines Konstruktionsfehlers (zu dünne Wände im abgebildeten Loch für den Lautsprecher) musste der Deckel neu gedruckt werden. Das heißt, der gesamte Druck dauerte ungefähr 28 Stunden. Fast die gesamte Kunststoffspule ist verschwunden.
Eine Stimme
Speech-to-Text
Das System kann sprechen und verstehen, was Sie dazu sagen. Drücken Sie eine Taste, sagen Sie eine Phrase und sie wandelt sie in Text um . Das Konvertieren von Sprache in Text ist eine äußerst schwierige Aufgabe. Google weiß, wie es geht, aber für das Geld. Und die erste Regel eines DIY-Projekts sind keine monatlichen Gebühren. Wie sich herausstellte, verfügen die neuesten Chromversionen über ein integriertes Spracherkennungswerkzeug. Die einzige Einschränkung ist, dass die Verbindung entweder https oder localhost sein muss. Ein Smart Home ist ein solches System: Client und Server befinden sich auf demselben Computer, sodass eine Verbindung über localhost möglich war.
Teamantwort
Der zweite Dienst heißt dialogflow. Der Trick besteht darin, dass Sie die Phrasenvorlage festlegen, zum Beispiel: "Wie ist das Wetter morgen?" und Sie geben an, dass das Wort morgen eine Variable vom Typ Datum ist. Und jetzt können Sie jede Frage stellen: "Wie ist das Wetter am 20. September?", "Wie ist das Wetter übermorgen?", "Wie ist das Wetter in 3 Tagen?" und das System versteht, dass dies das Datentypdatum ist, konvertiert es in das Programmdatum und reagiert darauf. Dieses ganze Thema befasst sich mit neuronalen Netzen und ist trainierbar. Wenn Sie sagten: "Wie wird das Wetter heute sein?" und das System hat es nicht verstanden, es heißt "Ich habe es nicht verstanden", und Sie gehen zum Server und bringen ihm direkt mit Ihren Händen bei, dass dieser Satz "Wie ist das Wetter?" bedeutet, und er erinnert sich. Das Training für neuronale Netze erfolgt über den Zugriff: Wenn Sie sich für den Dienst registrieren, werden Zugriffsschlüssel für die API ausgestellt, der Zugriff auf das persönliche Konto des Agenten erfolgt. Sie können diesen Agenten schulen und jemandem das Recht geben, ihn zu verwenden.
Es gibt ein weiteres cooles Thema im Dialogfluss - Mikrodialoge. Sie stellen eine Frage, zum Beispiel: "Wie geht es Ihnen?" und fragen Sie nach den Antwortmustern: „Bis ich geboren habe“, „Alles ist in Schokolade, sogar das Display“, „Wir machen Geschäfte und der Staatsanwalt hat Dinge zu tun“, „Oh, das ist es“ - und das System wählt jedes Mal zufällig eine Antwort aus diesen Optionen aus zu dieser Frage.
Es stellt sich heraus, dass der Dienst den Auslöser selbst an das Smart Home sendet, das ausgeführt werden muss, und eine mögliche Phrase für die Antwort, das Haus fängt diese Phrase und dann ist die Aufgabe umgekehrt: tts, dh Text zu Sprache.
Text-to-Speech
Yandex ist gut darin. Dort können Sie nicht nur die Stimme wählen (verschiedene Optionen für Frauen- und Männerstimmen), sondern auch die Stimmung (lustig, traurig, wütend, neutral). Yandex hat eine sehr einfache und Shareware-API (mit einem Limit von ungefähr 10 Tausend Conversions pro Tag).
So stellte sich ein Zyklus heraus: Sie sprechen eine Phrase aus, das System versteht sie, spricht etwas als Antwort aus und führt eine Aktion aus. So funktioniert beispielsweise das Einstellen des Alarms per Spracheingabe. Sie sagen: "Stellen Sie den Wecker am Dienstag um 7 Uhr ein." Und am Dienstag um 7 Uhr weckt Sie das Smart House.
SMS
Es ist gut, wenn das Smart House Sie über ein Feuer informieren oder eine Tür öffnen kann, wenn Sie nicht zu Hause sind, oder? Es gibt ein solches Modul namens sim800L. Dies ist ein GPS-Modem, bei dem es sich um ein vollwertiges Telefon handelt. Er weiß, wie man Anrufe tätigt, Anrufe entgegennimmt, SMS sendet / empfängt, mit gprs auf das Internet zugreift, mithilfe von Mobilfunkmasten den Standort bestimmt usw. Die Idee war: Dieses Modul bestellen, eine SIM-Karte in das Smart Home einlegen, einige einrichten einige Tarife, so dass es überhaupt keine Abonnementgebühr gibt, lassen Sie 500 Rubel dort und bis sie ausgegeben werden (1 Rubel pro SMS), und dies ist, zumindest für ein Jahr, vergessen Sie all dies.
Es stellte sich jedoch heraus, dass dieser Schal zum Zeitpunkt der Suche nach Netzwerken zu Spitzenzeiten 2 Ampere Strom verbraucht. Das Smart House verfügt über ein Leistungsmodul, das Kabel tritt dort ein, es befindet sich eine Batterie und die Batterie gibt das System aus. Eine Batterie kann maximal 3 Ampere Leistung liefern. Das heißt, 3 Ampere konstanter Verbrauch durch das gesamte System sind die Kante. Und wenn Sie dieses GSM-Modul zu Himbeere hinzufügen, wird es reduziert. Sie hat nicht genug Strom und geht einfach raus. Die einzige Lösung für das Problem besteht darin, das SMS-Sendemodul zu einer separaten Box zu machen. Dort können Sie dann 2 Ampere unterbrechungsfrei mit Strom versorgen. Und verbinden Sie sich einfach über WLAN mit Smart Home. Das heißt, das Smart Home teilt dem Modul mit: „Senden Sie eine solche Textnachricht“, und das Modul sendet. Jetzt muss Zhenya ein paar Eisenstücke kaufen, und das Modul ist fertig.
Kosten- Himbeer Pi - 1500 reiben.
- Anzeige - 2500 Rubel.
- Wetterstation Details - 1.500 Rubel. (Der teuerste Teil ist ein CO2-Sensor, 1100 Rubel.)
- Jede Kleinigkeit, wie ein Mikrofon, Computerlautsprecher, kleine Desktop-Lautsprecher, die billigsten, um einen Verstärker von dort zu bekommen - lassen Sie es 500 Rubel sein.
- Backup Power Gebühr - 1500 Rubel.
- Drucken eines 300 Gramm schweren Kartons (2 Rubel pro Gramm unter Berücksichtigung des Verbrauchs von Kunststoff und Strom) - 600 Rubel. Wenn Sie auf Bestellung drucken, kostet dies mehr, vielleicht etwa 1.500 Rubel.
Gesamt: 8.100 Rubel.
Ein kleiner Text am Ende
Elektronikingenieure sind Menschen, die fasziniert von einer dreistelligen Zahl auf dem Display aussehen und sagen:
- Schau wie cool!
Sie sehen sich die gleiche Nummer an und sagen unsicher:
- Cool, ja ...
"Was siehst du?" - Sie testen dich.
Sie versuchen:
- 328?
Und natürlich verstehst du es nicht. Weil es nicht nur 328 ist. Dies ist eine fantastische dynamische Anzeige.