Orodha ya maudhui:
- Hatua ya 1: Como Colocar Los Cables
- Hatua ya 2: Código Arduino
- Hatua ya 3: Código Python
- Hatua ya 4: Detalles Finales
Video: Alerta Sísmica Temprana .: 4 Hatua (na Picha)
2024 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2024-01-30 12:52
Vunja ufafanuzi
Wakati huo huo unazalisha vidokezo 3 vya kazi ya kwanza kwa sababu ya umuhimu wa kufanya hivyo, kupitia 8 kwa 13 km / s ni usajili kwa vifaa vya habari.
Zipo sensores caseros, que nos dan una alerta detectando estas ondas P, déndonos unos segundos antes que el sismo suceda.
El presente proyecto busca crear un sistema de alerta sísmica temprana en twitter.
Materiales matumizi
- 1 Arudino UNO (Aprox ya Costo. $ 25usd)
- 1 Arduino Shield Ehternet (Costo Aprox $ 24 usd)
- 1 Alarm ya Mtetemeko (Costo Aprox. $ 30 usd)
- 1 Placa de Circuito impresa para prototipos (Costo Aprox. $ 0.60 usd) o una protoboard
- Cables 3 Jumper de coleres tofauti (Costo Aprox. $ 0.30 usd)
- 1 Conector de batería de 9V (Costo Aprox. $ 0.30 usd)
- Cautin y soldadura
Hatua ya 1: Como Colocar Los Cables
Para poder hacer nuestro proyecto sin tener que abrir el sensor "Alarm ya Mtetemeko", inaweza kutumia kontena la la 9 batri za misitu.
El Arduino na dará 5v sensor zote zinatokana na utaftaji mzuri.
Kengele ya "Quake Alarm" inaweza kutekelezwa kwa njia ya kutahadharisha kuhusu P, ikiwa ni pamoja na kutafakari kwa njia moja, kwa sababu hiyo watu wengine wanapaswa kuhimili Pin A0 kwa muda mfupi.
En el siguiente orden se deben poner los cables:
5v - A0 - Cable negro del koneli ya bateri
Primero el cable de 5V que va a alimentar el sensor, luego el A0 que va monitorear el voltaje y finalmente el Cable negro del conector.
En otra fila conectamos el cable Negro que viene el Arduino y el cable rojo que viene del conector.
una vez los tengamos en este esten ordamos for que la electricidad pase entre ellos.
Muhimu kwa kontena moja ya kontena ya 9V al, sensa ya kebo inayoweza kutekelezwa kwa njia moja na kwa njia moja, kwa mfano.
Hatua ya 2: Código Arduino
En El Arduino vamos a crear un código que nos va a permitir 2 cosas:
- Leer el voltaje para buscar cambios
- Si hay una variación en el voltaje hacer una llamada a un servicio web
Vamos a explicar un poco el código, si no quieres entenderlo a profundidad luego de la explicación esta el código completo y donde descargarlo.
Para iniciar vamos a incluir las librerías necesarias para poder usar el shield ethernet y el serial.
# pamoja
# pamoja
Luego vamos chakula kirefu hakijatoweka mara kwa mara kwa PIN
#fafanua MTAZAMO A0
Ufafanuzi wa aina tofauti za vitu vinaweza kutumiwa kwa shughuli zote za utaftaji wa voliti na upeo wa wavuti ya tovuti na huduma.
tuli int diferencia;
int qaVal = 0; int qaPreVal = 0;
kizingiti = 10;
int intervaloTiempo = 5000; // Intervalo de tiempo entre dos llamadas al servicio mtandao
ndefu
ultimaConexion = 0; // Tiempo en milisegundos desde la ultima conexion al servicio web
Viumbe vya vitu vya Ahora vinaweza kutekelezwa kwa uso wa ethernet, na maelezo mafupi ya MAC kutoka kwa nyekundu, kwa IP ambayo itatumiwa kwa kutumia vifaa vya EthernetClient kwa sababu ya vifaa vya redi. Tumia maoni yako kwa ufafanuzi wa IP na huduma za kumbukumbu za data hizi.
byte mac = {0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED};
byte ip = {192, 168, 15, 120}; // Direccion IP del Arduino
baiti
seva = {192, 168, 15, 111}; // Direccion IP del servidor
Mteja wa EthernetMteja;
Viambatanisho vya moja kwa moja, huria na vifungo vya orodha orodha ya programu zinazotumiwa na programu ya Arduino:
- Incializamos el mfululizo 57600
- Luego le decimos al arduino que el pin A0 (constante QuAKEALARM) lo vamos a usar como un pin de entrada.
- Finalmente iniciamos la tarjeta de nyekundu.
kuanzisha batili () {Serial.begin (57600); pinMode (QuAKEALARM, INPUT);
Ethernet. Kuanza (mac, ip); // Inicializamos el Ethernet Shield
}
Kwa kipindi cha mwisho cha programu, majadiliano na maoni yako ni pamoja na kufanya marekebisho kwa njia mpya ya kuwa chini ya kiwango cha chini cha 5v kwa sababu utaftaji wa huduma na upeanaji wa GET kwa sababu ya nguvu 1 ya la "sismo". también filtra para que exista un lapso de tiempo de 5 sekunde entre un envió de información y otro.
kitanzi batili () {
qaVal = AnalogSoma (QuAKEALARM); diferencia = qaPreVal - qaVal;
ikiwa ((diferencia> 0) na (diferencia> = kizingiti) na ((millis () - ultimaConexion)> intervaloTiempo)) {
contador = contador + 1;
Serial.print ("Sismo!");
Serial.println (contador);
ultimaConexion = millis ();
ikiwa (mteja.connect (seva, 5002)> 0) {
Serial.println ("Conecto");
alama ya mteja ("GET /? sismo = 1"); // Enviamos los datos por GET
mteja.println ("HTTP / 1.0");
mteja.println ("Wakala wa Mtumiaji: Arduino 1.0");
}
mteja.acha ();
mteja.flush (); }
qaPreVal = qaVal;
}
Puedes descargar el código en github.com/bettocr/alertasismo
Código completo:
# pamoja
# pamoja
// Kengele ya Quake
#fafanua MTAZAMO A0
// Variable que mantiene el valor anterior del QuakeAlarm
tuli int diferencia;
int qaVal = 0;
int qaPreVal = 0; kizingiti = 10; int intervaloTiempo = 5000; // Intervalo de tiempo entre dos llamadas al servicio mtandao mrefu ultimaConexion = 0; // Tiempo en milisegundos desde la ultima conexion al servicio web
// Vigezo vya Ethernet
// Tazama kuanzisha orodha mpya ya MAC, IP ya ndani, Puerta de Enlace y Máscara de Red
byte mac = {0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED}; byte ip = {192, 168, 8, 20}; // seva ya Direccion IP del Arduino byte = {192, 168, 8, 11}; // Direccion IP del servidor EthernetMteja mteja; kuanzisha batili () {Serial.begin (57600); pinMode (QuAKEALARM, INPUT); // Ethernet Ethernet. kuanza (mac, ip); // Inicializamos el Ethernet Shield}
kitanzi batili () {
qaVal = AnalogSoma (QuAKEALARM);
diferencia = qaPreVal - qaVal;
ikiwa ((diferencia> 0) na (diferencia> = kizingiti) na ((millis () - ultimaConexion)> intervaloTiempo)) {
contador = contador + 1; Serial.print ("Sismo!"); Serial.println (contador); ultimaConexion = millis (); ikiwa (mteja.connect (seva, 5002)> 0) {Serial.println ("Conecto"); alama ya mteja ("GET /? ufunguo = 1122334455 & sismo = 1"); // Enviamos los datos por GET client.println ("HTTP / 1.0"); mteja.println ("Wakala wa Mtumiaji: Arduino 1.0"); } mteja.acha (); mteja.flush (); } qaPreVal = qaVal; }
Hatua ya 3: Código Python
Hii ni sehemu ya huduma ya wavuti inayotumiwa na wavuti 5002 kwa huduma (unaona uso wako kwenye Raspberry Pi na mi casa), ikiwa ni pamoja na kukumbuka picha ya Arduino kwa sababu ya kutamani.
Tazama orodha hii kwa programu inayotekelezwa ikiwa ni pamoja na mipango na matumizi ya vifaa vya kutolea huduma PUSH kwa muda mfupi.
Kwa sababu hii utahitaji kutoa huduma kwenye apps.twitter.com una aplicación y obtener los datos Consumer Key (API Key), Siri ya Watumiaji (Siri ya API), Teni ya Ufikiaji na Siri ya Ishara ya Ufikiaji. y en la función tweet cambiar las xxxxx for sus respectivos valores.
Pueden descargar el código completo en github.com/bettocr/alertasismo o copiarlo a kuendelea:
#! / usr / bin / chatu2.7
# - * - kuorodhesha: utf-8 - * -
kuagiza maombi, urllib2, urllib, tweepy
kutoka kwa chupa ya kuingiza chupa, ombi
kutoka kwa StringIO kuagiza StringIO
kutoka wakati wa kuingiza wakati wa wakati, timedelta
def tweet (mensaje):
CONSUMER_KEY = 'xxxxxxx'
CONSUMER_SECRET = 'xxxxxxx'
ACCESS_KEY = 'xxxxxxxx'
ACCESS_SECRET = 'xxxxxx'
auth = tweepy. OAuthHandler (CONSUMER_KEY, CONSUMER_SECRET)
auth.set_access_token (ACCESS_KEY, ACCESS_SECRET)
api = tweepy. API (auth, parser = tweepy.parsers. JSONParser ())
tweetid = api.update_status (hadhi = mensaje)
programu = chupa (_ jina_)
@ app.route ("/", mbinu = ['GET'])
def sismo ():
jaribu:
sismo = ombi.giba.get ("sismo")
ikiwa (str (sismo) == "1"):
t = wakati. sasa ()
hora = t. muda wa saa ("% - I:% M% p")
tweet ("[En Pruebas] Posmo sismo en los próximos segundos (" + hora + ")")
isipokuwa IOError as err: chapa 'Fallo'
kupita
isipokuwa Isipokuwa kama e:
chapisha "Isipokuwa" + str (e)
kupita
rudisha "Sawa"
Hatua ya 4: Detalles Finales
Como Pasos adicionales para darle una mejor picha kutoka hice lo siguiente
- Corte la Placa de Circuito justo for que entara en el espacio destinado a la bateri.
- Kutumia mototool hice un hueco en la tapa en la esquina mkuu derecha para que los cables entaran.
- Con nyenzo termo busara, tumia los 3 cables que van al Arduino para que parezca un solo cable.
- Kwa sababu ya msamehewa kwa bidii, unaweza kusoma 3D mlima huu
Pueden unatafuta kila kitu kutoka kwa @SismoTico
Ilipendekeza:
Jinsi: Kuweka Raspberry PI 4 isiyo na kichwa (VNC) na Rpi-picha na Picha: Hatua 7 (na Picha)
Jinsi: Kuweka Raspberry PI 4 isiyo na kichwa (VNC) Na picha ya Rpi na Picha: Ninapanga kutumia Rapsberry PI hii kwenye rundo la miradi ya kufurahisha nyuma kwenye blogi yangu. Jisikie huru kuiangalia. Nilitaka kurudi kutumia Raspberry PI yangu lakini sikuwa na Kinanda au Panya katika eneo langu jipya. Ilikuwa ni muda tangu nilipoweka Raspberry
Uso wa Kujua Picha ya Picha ya OSD: Hatua 11 (na Picha)
Uso wa Kujua Picha ya Picha ya OSD: Maagizo haya yanaonyesha jinsi ya kutengeneza fremu ya picha na utambuzi wa uso kwenye Onyesho la Skrini (OSD). OSD inaweza kuonyesha wakati, hali ya hewa au habari nyingine ya mtandao unayotaka
Utengenezaji wa Picha / Picha ya Picha: 4 Hatua
Picha-based Modeling / Photogrammetry Portraiture: Halo kila mtu, Katika hii inayoweza kuelekezwa, nitakuonyesha mchakato wa jinsi ya kuunda vielelezo vya 3D kwa kutumia picha za dijiti. Mchakato huo unaitwa Photogrammetry, pia inajulikana kama Modeling-Image Modeling (IBM). Hasa, aina ya mchakato huu hutumiwa
Hawk ya Ishara: Roboti Iliyodhibitiwa na Ishara ya Mkono Kutumia Picha ya Usindikaji wa Picha: Hatua 13 (na Picha)
Hawk ya Ishara: Robot Iliyodhibitiwa na Ishara ya Mkono Kutumia Picha ya Usindikaji wa Picha: Hawk ya Ishara ilionyeshwa katika TechEvince 4.0 kama muundo rahisi wa picha ya msingi wa mashine ya kibinadamu. Huduma yake iko katika ukweli kwamba hakuna sensorer za ziada au za kuvaliwa isipokuwa glavu inahitajika kudhibiti gari ya roboti inayoendesha tofauti
Picha ya Picha ya Dijitali, Wifi Imeunganishwa - Raspberry Pi: Hatua 4 (na Picha)
Picha ya Picha ya Dijitali, Wifi Imeunganishwa - Raspberry Pi: Hii ni njia rahisi na ya gharama nafuu kwa fremu ya picha ya dijiti - na faida ya kuongeza / kuondoa picha kwenye WiFi kupitia 'bonyeza na buruta' kwa kutumia (bure) mpango wa kuhamisha faili . Inaweza kutumiwa na Pauni Zero ndogo ya Pauni 4.50. Unaweza pia kuhamisha