Taula de continguts:

Save My Child: el seient intel·ligent que envia missatges de text si oblideu el nen al cotxe: 8 passos
Save My Child: el seient intel·ligent que envia missatges de text si oblideu el nen al cotxe: 8 passos

Vídeo: Save My Child: el seient intel·ligent que envia missatges de text si oblideu el nen al cotxe: 8 passos

Vídeo: Save My Child: el seient intel·ligent que envia missatges de text si oblideu el nen al cotxe: 8 passos
Vídeo: Legacy (Emanet) Capítulo 323 Trailer - Kenan é responsável por tudo. Ele ameaçou te matar. 2024, Juliol
Anonim
Save My Child: el seient intel·ligent que envia missatges de text si oblideu el nen al cotxe
Save My Child: el seient intel·ligent que envia missatges de text si oblideu el nen al cotxe

S'instal·la als cotxes i, gràcies a un detector situat al seient del nen, ens avisa (per SMS o trucada telefònica) si marxem sense portar el nen amb nosaltres

Pas 1: Introducció

Introducció
Introducció

Entre els accidents més tristos (i, com a mínim, poc freqüents) de les notícies, hi ha els dels pares que, a causa de la rapidesa, els problemes de salut o la manca d'atenció, baixen del cotxe i "obliden" els seus fills al seient del nen, en un ambient càlid o fred. Certament, es podrien haver evitat aquests accidents si algú o alguna cosa recordés al conductor que va deixar el nen al cotxe; sens dubte, la tecnologia pot ajudar i oferir solucions, que el fabricant ha d’implementar al vehicle o de tipus “retrofit”, com ara el projecte aquí descrit. Es tracta d’un dispositiu basat en un telèfon mòbil GSM que detecta alguns paràmetres, en funció dels quals s’avalua el comportament del conductor i s’executen les accions necessàries: en particular, s’envia un SMS al telèfon del conductor que s’està escapant. del cotxe. El dispositiu s’instal·la al cotxe i s’alimenta del sistema elèctric d’aquest últim; verifica que el nen està al seu seient (mitjançant un sensor que està format per uns botons de perfil baix, muntats en una taula per col·locar sota la coberta del seient del nen): si resulta que es premen els botons (per tant, el nen està assegut), el circuit també comprovarà que el vehicle s’ha aturat (mitjançant un acceleròmetre triaxial), si és així i un cop transcorregut el temps establert, enviarà un missatge SMS d’alarma al telèfon del conductor i deixarà escapar un so de zumbador.

A més, realitza una trucada al mateix número de telèfon i possiblement a altres, de manera que pares, amics i altres persones poden trucar al conductor per verificar el que està passant. Tot i que l’aplicació escollida és l’esmentada, el projecte s’ha creat al nostre laboratori com a plataforma que es pot adaptar als altres dos propòsits. El primer és un dispositiu de corrent residual per a persones grans i fràgils, mentre que el segon és una alarma remota, que funciona en cas d’apagades (i és útil per evitar que el congelador es descongeli i que els aliments que conté siguin perillosos).).

Pas 2: deseu el diagrama del circuit del meu fill

Diagrama del circuit Save My Child
Diagrama del circuit Save My Child

Vegem, doncs, de què es tracta i analitzem el diagrama elèctric del circuit, la gestió del qual ha estat confiada a un microcontrolador PIC18F46K20-I / PT mitjançant Microchip, que ha estat programat a través del nostre microprogramari MF1361, de manera que es llegeixi l’estat de les entrades (a les quals està connectat el sensor de pes del seient infantil i un possible dispositiu de detecció) i adquireix els senyals subministrats per l’acceleròmetre (U5) i parla amb l’EEPROM externa (U4) (que conté els paràmetres per al funcionament del sistema) i interfície amb un possible receptor de ràdio (U6), i gestiona un mòdul cel·lular (GSM).

Tingueu en compte que el circuit considera elements que es poden muntar o no, ja que el vam concebre com una plataforma de desenvolupament expandible per a aquells de vosaltres que desitjaven crear la seva pròpia aplicació, a partir del firmware base. Comencem descrivint el microcontrolador que, després de reiniciar l’engegada, inicialitza les línies RB1 i RB2 com a entrades subministrades amb una resistència de tracció interna que serà necessària per llegir alguns contactes oberts normalment connectats a IN1 i IN2; els díodes D2 i D3 protegeixen el microcontrolador en el cas que s’apliqui erròniament a les entrades una tensió superior a la de la font d’alimentació PIC. Actualment s’utilitza IN1 per al sensor de pes del seient infantil, mentre que IN2 està disponible per a altres possibles controls: el podem utilitzar, per exemple, per a la detecció de l’obertura i el tancament de les portes, mitjançant la lectura de la tensió dels llums de cortesia.; pel que fa a això, tingueu en compte que en alguns cotxes moderns els llums de sostre són gestionats (en PWM) per una caixa de connexions (per tal d’assegurar un encès i apagat gradual), mentre que només hem de llegir l’estat de les llums engegades instantàniament. i apagat (en cas contrari, la lectura serà anormal); després d’això, haurem de filtrar el PWM mitjançant un condensador situat entre l’entrada i la terra del microcontrolador (després del díode). Una altra entrada és RB3, que encara es subministra amb una resistència interna de tracció, que es necessita per llegir el botó P1 (que s’utilitza per encendre el mòdul cel·lular, que normalment està apagat). Encara durant la inicialització de les E / S, RB4 es configura com a entrada amb la finalitat de llegir - mitjançant el divisor de tensió R1 i R2 - l’inici del circuit, realitzat pel doble desviador SW1b; es necessita el divisor de tensió ja que el microcontrolador tolera una tensió inferior a la d'entrada que es troba al connector d'alimentació. La funció del RB4 s’ha reservat per a futurs desenvolupaments, s’explica tenint en compte que el circuit pot alimentar-se tant mitjançant una font d’alimentació de xarxa mitjançant presa USB com mitjançant una bateria de liti connectada a la sortida del regulador de càrrega dedicat.

Pas 3: diagrama del circuit

Esquema de connexions
Esquema de connexions

Quan SW1 es mou als contactes que estan marcats amb una creu al diagrama del circuit, la resta del circuit queda aïllat de la bateria i, per tant, s'apaga; si a l’entrada de la font d’alimentació (USB) s’aplica una tensió de 5 volts, només funcionarà l’etapa del carregador (s’alimenta mitjançant el díode D1, que el protegeix de les inversions de polaritat). En moure SW1 a la posició engegada, SW1b porta la tensió d’entrada a la línia RB4 i SW1a alimenta el microcontrolador i el que no, mitjançant la tensió als extrems de la bateria (aproximadament 4 V quan està a plena càrrega) a més d’encendre’s. el convertidor de commutació step-up signat com a U3, que genera els 5V que necessita la resta del circuit.

Pel que fa al funcionament del circuit alimentat mitjançant USB, SWb aporta la tensió d’entrada al RB4, que, implementant la seva lectura al firmware, permet entendre si es troba la font d’alimentació de la xarxa; aquesta funció és útil per crear l'alarma anti-apagada. D’altra banda, durant el funcionament de la bateria, RB4 permet al microcontrolador saber-ho i dur a terme possibles estratègies per disminuir el consum d’energia (per exemple, reduint els intervals d’encesa del telèfon mòbil). La línia RB4 és l’única manera que el microprogramari ha d’entendre quan el circuit funciona amb bateria, ja que si U1 rep energia fins i tot si RB4 és a zero volts, vol dir que el circuit funciona amb bateria, mentre que si hi ha una altra font d’alimentació, funcionarà gràcies a la tensió extreta de l'USB. Tornem ara a la inicialització d'E / S i veurem que les línies RC0, RE1, RE2 i RA7 s'inicialitzen com a entrades, que han estat proveïdes d'una resistència d'extracció externa, ja que no podem activar-la internament per a aquestes línies; seran necessaris per llegir els canals del receptor híbrid, que de totes maneres és un accessori, reservat per a futurs desenvolupaments. Aquest receptor podria resultar útil per a l'ús domèstic com a alarma remota, per a aquells que es veuen afectats pel seu moviment o obligats al llit; en detectar la variació a les sortides de la ràdio RX, realitzarà una trucada telefònica per demanar ajuda o enviarà un SMS similar. Aquesta és una possible aplicació, però n'hi ha d'altres; de totes maneres, s'ha d'implementar al firmware. RC3, RC4, RB0 i RD4 són les línies que s’han assignat a l’acceleròmetre U4, que més concretament és una placa de ruptura basada en l’acceleròmetre triaxial MMA8452 de NXP: RC3 és una sortida i és necessària per enviar un senyal de rellotge, RC4 és una E / S bidireccional i condueix l'SDA, mentre que els altres dos pins són entrades reservades a la lectura de les interrupcions INT1 i INT2, que són generades per l'acceleròmetre quan es produeixen certs esdeveniments. Les línies RA1, RA2 i RA0 encara són entrades, però s’han multiplexat al convertidor A / D i s’utilitzen per llegir l’acceleròmetre triaxial U5, que també es troba a la placa de sortida i que es basa en el mòdul d’acceleròmetre MMA7361.; aquest component es pretén com una alternativa a l’U4 (que és el que actualment espera el nostre firmware) i proporciona informació relativa a les acceleracions detectades als eixos X, Y, Z mitjançant voltatges analògics que surten de les línies corresponents. En aquest cas, el firmware es simplifica, ja que no és necessària la rutina de gestió del MMA8452 (requereix la lectura de registres, la implementació del protocol I²C-Bus, etc.). Encara sobre el tema dels ADC, la línia An0 s’utilitza per llegir el nivell de tensió, subministrat per la bateria de liti, que alimenta el microcontrolador i la resta del circuit (excepte el receptor de ràdio); si el microprogramari ho considera, permet la possibilitat d'apagar la totalitat quan la bateria s'està esgotant o quan es troba sota un llindar de voltatge determinat. La línia RC2 s’inicialitza com a sortida i genera una sèrie d’impulsos digitals quan el brunzidor piezoelèctric BUZ1 ha de deixar anar la nota acústica d’avís que ha estat indicada pel firmware; les altres dues sortides són RD6 i RD7, a les quals se’ls ha encarregat la tasca d’encendre els LED LD1 i LD2.

Pas 4: Diagrama de circuits del PCB

Diagrama de circuits del PCB
Diagrama de circuits del PCB

Completem l’anàlisi de les E / S amb RD0, RD2, RD3, RC5, que juntament amb els RXs i TXs de la UART des de la interfície cap al mòdul cel·lular SIM800C de SIMCom; al circuit, aquesta última està muntada en una placa dedicada per inserir-la al connector específic que es troba a la placa de circuits impresos. El mòdul intercanvia les dades relatives als missatges enviats (els d’alarma) i els rebuts (els de configuració) amb el microcontrolador, a través de l’UART del PIC, que també és necessari per a les ordres de configuració del telèfon mòbil; la resta de línies es refereixen a alguns senyals d’estat: RD2 llegeix la sortida del LED de “senyal” que repeteix LD4, mentre que RD3 llegeix l’indicador de timbre, és a dir, el contacte del mòbil que proporciona el nivell lògic alt quan es rep una trucada telefònica. La línia RD0 permet restablir el mòdul i RC5 s’encarrega d’encendre i apagar; Els circuits de la placa on es troba muntat el SIM800C implementen el restabliment i l’encès / apagat.

La placa, el diagrama del qual del circuit s’ha mostrat, juntament amb el pinout del connector d’inserció, a la figura 1, conté el telèfon mòbil SIM800C, un connector d’antena MMX 90 ° i una tira de pins 2 × 10 mascle de 2 mm font, la línia de control d’encesa (PWR), tots els senyals i les línies de comunicació en sèrie des del i cap al mòdul GSM, tal com es mostra a la figura 1.

Pas 5: Diagrama de circuits del PCB

Diagrama de circuits del PCB
Diagrama de circuits del PCB

Atès que s’han definit les E / S del microcontrolador, podem fer una ullada a les dues seccions que intervenen en l’alimentació del circuit: el carregador i el convertidor continu DC / DC.

El carregador es basa en el circuit integrat (U2) MCP73831T, fabricat per Microchip; com a entrada normalment accepta 5V (el rang tolerable oscil·la entre 3,75V i 6V), entrant en aquest circuit des del connector USB; subministra, a la sortida, el corrent necessari per carregar elements de ió de liti o polímer de liti (Li-Po) i subministra fins a 550 mA. Una bateria (per connectar-se als contactes +/- BAT) pot tenir una capacitat teòricament il·limitada, ja que com a màxim es carregaria en un temps molt llarg, no obstant això, tingueu en compte que mitjançant un corrent de 550 mA, un element de 550 mAh és cobrat en una hora; ja que vam triar una cel·la de 500 mAh, es carregarà en menys d’una hora. El circuit integrat funciona en la configuració típica, en què el díode de llum LD3 és impulsat per la sortida STAT, que es porta al nivell lògic baix quan es carrega, mentre que es manté a un nivell lògic alt quan deixa de carregar-se; el mateix passa amb una alta impedància (oberta) quan l'MCP73831T s'apaga o quan resulta que no hi ha cap bateria connectada a la sortida VB. VB (pin 3) és la sortida que s’utilitza per a la bateria de liti. El circuit integrat realitza la càrrega amb corrent i tensió constants. El corrent de càrrega (Ireg) s’estableix mitjançant una resistència connectada al pin 5 (en el nostre cas, això és R6); el seu valor està connectat a la resistència per la següent relació:

Ireg = 1, 000 / R

en què el valor R s’expressa en ohm si el corrent d’Ireg s’expressa en A. Per exemple, amb 4,7 kohm s’obté una limitació de 212 mA, mentre que R és de 2,2 kohm el corrent val uns 454 mA. si s'obri el pin 5, el circuit integrat es posa al ralentí i només absorbeix 2 µA (apagat); per tant, el passador es pot utilitzar com a habilitant. Completem la descripció del diagrama del circuit amb el convertidor step-up, que treu 5 volts estabilitzats de la tensió de la bateria; l’escenari es basa en el circuit integrat MCP1640BT-I / CHY, que és un regulador d’augmentació síncrona. Al seu interior hi ha un generador PWM que condueix un transistor el col·lector del qual tanca periòdicament la bobina L1 a terra, mitjançant el pin SW, el carrega i el deixa alliberar l’energia acumulada durant les pauses (mitjançant el pin 5) a els condensadors de filtre C2, C3, C4, C7 i C9. La pinça de díode que protegeix el transistor intern també és interna, reduint així els components externs necessaris al mínim: de fet, hi ha els condensadors de filtre entre Vout i terra, l'inductor L1 i el divisor resistiu entre Vout i FB que tracta amb la reactivació del generador PWM mitjançant l'amplificador d'error intern, mitjançant l'estabilització de la tensió de sortida al valor desitjat. Modificant la relació entre R7 i R8, per tant, és possible modificar la tensió subministrada pel pin Vout, però no és del nostre interès fer-ho.

Pas 6: Configuració i ordres de Save My Child

Configuració i ordres de Save My Child
Configuració i ordres de Save My Child
Configuració i ordres de Save My Child
Configuració i ordres de Save My Child

Un cop finalitzada la instal·lació, haureu de configurar la unitat; aquesta operació es realitza mitjançant SMS, per tant, introduïu una SIM operativa al suport de la targeta SIM del mòdul 7100-FT1308M i preneu nota del número de telèfon corresponent. Després, doneu totes les ordres necessàries mitjançant un telèfon mòbil: totes es mostren a la taula 1.

Entre les primeres coses a fer hi ha la configuració dels números de telèfon a la llista dels que trucarà el sistema o als quals s’enviaran els missatges SMS d’alarma, en el cas d’un nen al seient infantil que possiblement hagi estat “oblidat abandonat”. Per tal de facilitar el procediment, atès que el sistema està protegit per la contrasenya per a aquesta operació, s’ha dissenyat un mode de configuració fàcil: durant la primera vegada que s’inicia, el sistema desarà el primer número de telèfon que el truca i ho considera com el primer número de la llista. Aquest número podrà realitzar modificacions, fins i tot sense contrasenyes; de totes maneres, les ordres poden ser enviades per qualsevol telèfon, sempre que l’SMS corresponent inclogui la contrasenya, i tot i que, per tal d’accelerar algunes ordres, vam permetre que les enviades pels números de telèfon de la llista es poguessin donar sense necessitat de contrasenyes. Pel que fa a les ordres sobre l’addició i la supressió de números de telèfon de la llista, la sol·licitud d’una contrasenya fa que la llista sigui gestionada només per una persona que estigui habilitada per fer-la. Passem ara a la descripció de les ordres i a la sintaxi corresponent, amb la premissa que el circuit també accepta missatges SMS que contenen més d’una ordre; en aquest cas, les ordres s'han de separar de la següent mitjançant una coma. La primera ordre examinada és la que modifica la contrasenya, consisteix en un SMS com PWDxxxxx; pwd, en el qual s’ha d’escriure la nova contrasenya (composta de cinc números) en lloc de xxxxx, mentre que pwd indica la contrasenya actual. La contrasenya per defecte és 12345.

La memorització d’un dels vuit números habilitats per enviar ordres de configuració es realitza enviant un SMS, el text del qual conté el text NUMx + nnnnnnnnnnnnn; pwd, en el qual s’ha d’escriure la posició (quin número s’està memoritzant) al lloc de la x, el número de telèfon va al lloc dels ns, mentre que pwd és la contrasenya actual. Tot s’ha d’escriure sense espais. Es permeten números de 19 xifres, mentre que el + substitueix 00 com a prefix de trucada internacional als telèfons mòbils. Per exemple, per afegir el número de telèfon 00398911512 a la tercera posició, haureu d'enviar una ordre com aquesta: NUM3 + 398911512; pwd. La contrasenya només és necessària quan intenteu desar un número de telèfon en una posició que ja ha estat ocupada per un altre; en canvi, si heu d’afegir un número en posició buida, només haureu d’enviar un SMS amb el text següent: NUMx + nnnnnnnnnnnnn. La supressió d’un número s’executa mitjançant un SMS que conté el text NUMx; pwd; al lloc de la x haurà d’escriure la posició del número de telèfon que s’esborrarà, mentre que pwd és la contrasenya habitual. Per exemple, per suprimir el quart número de telèfon de la llista memoritzada, cal un missatge que contingui el text NUM4; pwd. Per sol·licitar la llista del número de telèfon memoritzat al circuit, haureu d’enviar un SMS amb el text següent: NUM?; Pwd. La junta respon al número de telèfon del qual prové l’interrogatori. És possible conèixer la qualitat del senyal GSM enviant el QUAL? comandament; el sistema respondrà amb un SMS que conté la situació actual. El missatge s’enviarà al telèfon que ha enviat l’ordre. Passem ara a l'estat d'entrada i als missatges de configuració: LIV? permet conèixer l’estat de les entrades; L'IN2 pot funcionar tant a un nivell de tensió (s'estableix mitjançant LIV2: b, que activa l'alarma quan l'entrada està oberta) com a una de variació (s'estableix mitjançant LIV: v). Pel que fa a les entrades, és possible establir un temps d'inhibició, mitjançant l'ordre INI1: mm (els minuts d'interdicció van al lloc de mm) per a IN1 i mitjançant INI2: mm per a IN2; es necessita la inhibició per evitar l’enviament d’advertències contínues si l’entrada –en mode de nivell– continua oberta. Per definir quins números de la llista han de rebre trucades, heu d’enviar el missatge VOCxxxxxxxx: ON; pwd, amb les mateixes regles que s’utilitzen per a la gestió dels números de telèfon als quals enviar els missatges SMS. El missatge de resposta és molt similar: "Nombre memoritzat: Posx V + nnnnnnnnnnnn, Posy V + nnnnnnnnnnn". La S de SMS ha estat substituïda per la V de veu. Fins i tot en aquest cas, hi ha dues ordres diferents per a la desactivació: SMSxxxxxxxx: OFF; pwd desactiva l’enviament de missatges i VOCxxxxxxxx: OFF; pwd desactiva la possibilitat de fer trucades telefòniques. Les x representen les posicions dels números que no han de rebre els avisos d'alarma. Hem d’aclarir alguna cosa relacionada amb l’ordre de configuració dels números de telèfon per trucar o al qual enviar els missatges SMS d’alarma: segons la configuració predeterminada del firmware i després de cada restabliment total, el sistema dirigirà les trucades i els SMS missatges, a tots els números memoritzats. En conseqüència, per deixar de banda alguns d’ells, cal enviar les ordres de desactivació: SMSxxxxxxxx: OFF; pwd o VOCxxxxxxxx: OFF; pwd i indicar les posicions a deixar de banda. El sistema envia un SMS al número de telèfon que ocupa el primer lloc de la llista, cada vegada que s’alimenta recentment. Aquesta funció es pot desactivar / habilitar mitjançant les ordres AVV0 (desactivar) i AVV1 (activar); el text per defecte és INICI DEL SISTEMA. Passem ara a les ordres que permeten enviar la memorització o la sobreescriptura dels missatges SMS: la sintaxi és com la de TINn: xxxxxxxxx, en la qual n és el número d’entrada a què fa referència el missatge, mentre que la xs corresponen al missatge de text, que no pot superar els 100 caràcters. Un paràmetre essencial és el relatiu al temps d'observació IN1, que es realitza mitjançant l'ordre OSS1: ss, en què el temps (que oscil·la entre 0 i 59 segons) va al lloc de ss: indica al circuit quant temps que els botons han de romandre premuts des del moment en què s’ha detectat que el cotxe s’ha aturat i abans de la generació de l’alarma. El retard és essencial, per evitar que sorgeixi una falsa alarma quan s’atura poc temps. Sota aquest punt de vista, el microprogramari, quan el circuit s’alimenta (quan el tauler està engegat), espera un temps que sigui el doble del previst, per tal de permetre al conductor realitzar operacions com tancar la porta del garatge o subjectar els cinturons de seguretat, etc. També es pot definir un temps d'observació per a IN2, amb els mateixos procediments, donant l'ordre OSS2: ss; també és possible sol·licitar els horaris establerts actualment mitjançant SMS (ordre OSS?). Completem aquesta visió general de les ordres amb la que retorna la configuració predeterminada: això és RES; pwd. El missatge de resposta és "Restableix". La resta d’ordres s’ha descrit a la taula 1.

Pas 7: llista de components

C1, C8, C10: condensador ceràmic 1 µF (0805)

C2, C6, C7, C9: condensador ceràmic de 100 nF (0805)

C3, C4: condensador de tantal de 470 µF 6,3 VL (D)

C5: 4, 7 µF 6.3 VL condensador de tàntal (A)

R1, R2, R4: 10 kohm (0805)

R3, R12: 1 kohm (0805)

R5: 470 ohm (0805) R6: 3,3 kohm (0805)

R7: 470 kohm (0805) 1%

R8: 150 kohm (0805) 1%

R9 ÷ R11: 470 ohm (0805)

R13 ÷ R16: 10 kohm (0805)

R17: -

U1: PIC18F46K20-I / PT (MF1361)

U2: MCP73831T

U3: MCP1640BT-I / CHY

U4: cod. 2846-MMA8452

U5: cod. 7300-MMA7361 (sense utilitzar)

P1: microinterruptor de 90 °

P2: -

LD1: LED groc de 3 mm

LD2, LD4: LEDs verds de 3 mm

LD5: - LD3: LED vermell de 3 mm

D1 ÷ D3: MBRA140T3G

D4: MMSD4148

DZ1: díode Zener de 2,7 V 500 mW

L1: inductor bobinat de filferro de 4,7 µH 770mA

BUZ1: Zumbador sense electrònica

Divisor femení de 8 vies

Divisor femení de 9 vies

Separador de tires masculí de 6 vies

Connector femella de pas 2 mm 2 × 10

Terminal bidireccional de 2,54 pas (3 unitats)

Connector JST bidireccional de pas de 2 mm per a PCB

Bateria LiPo de 500 mA amb connector JST de 2 mm

Placa de circuits impresos S1361 (85 × 51 mm)

Pas 8: Conclusió

Conclusió
Conclusió

El projecte que vam proposar aquí és una plataforma oberta; és possible utilitzar-lo per crear moltes aplicacions, entre les quals hi ha: l'alarma per evitar oblidar nens al cotxe, el sistema de cura remota i l'alarma remota que hem esmentat anteriorment. Més en general, aquest és un sistema capaç de generar avisos i notificacions per telèfon, quan es produeixen certs esdeveniments (que no necessàriament són emergències) i, per tant, també serveixen per fer un seguiment remot.

Recomanat: