Агуулгын хүснэгт:

Alerta Sísmica Temprana .: 4 алхам (зурагтай)
Alerta Sísmica Temprana .: 4 алхам (зурагтай)

Видео: Alerta Sísmica Temprana .: 4 алхам (зурагтай)

Видео: Alerta Sísmica Temprana .: 4 алхам (зурагтай)
Видео: Alerta Sísmica México - Audio 2024, Арваннэгдүгээр
Anonim
Alerta Sísmica Temprana
Alerta Sísmica Temprana
Alerta Sísmica Temprana
Alerta Sísmica Temprana
Alerta Sísmica Temprana
Alerta Sísmica Temprana
Alerta Sísmica Temprana
Alerta Sísmica Temprana

Breve explicación

Үйлдвэрлэгчдийн хувьд 3 төрлийн үйлчилгээ нь 8 жилийн 13 км/с -ийн дотор бүртгүүлэх боломжтой болно.

Байгаа мэдрэгчид нь P, dándonos unos segundos antes que el sismo suceda гэх мэт мэдрэгчтэй байдаг.

Твиттер хуудсан дээрх програмыг танилцуулж байна.

Хэрэглэгч материал

- 1 Арудино НҮБ (Косто ойролцоогоор 25 доллар)

- 1 Arduino Shield Ehternet (ойролцоогоор $ 24 доллар)

- 1 газар хөдлөлтийн дохиолол (Costo Aprox. 30 USD)

- Прототипууд (Costo Aprox. $ 0.60 USD) дээр 1 ширхэг протокол самбар байрлуулсан.

- 3 кабель Jumper de diferentes colores (Costo Aprox. $ 0.30 USD)

- 1 Conector de batería de 9V (Costo Aprox. $ 0.30 USD)

- Cautin y soldadura

Алхам 1: Como Colocar Los Cables

Como Colocar Los Cables
Como Colocar Los Cables
Como Colocar Los Cables
Como Colocar Los Cables
Como Colocar Los Cables
Como Colocar Los Cables
Como Colocar Los Cables
Como Colocar Los Cables

Мэдээлэл хүлээн авагч нь "Газар хөдлөлтийн дохиолол" гэсэн 9 мэдрэгчтэй дэлгэцийн мэдрэгчтэй болно.

El Arduino le dára 5v al sensor con los que va a poder funcionar bien.

"Quake Alarm" дууны дохио нь P, si este parlante suena el voltaje baja, a pin monitor a un monitorable un cambio en el voltaje.

Лос кабелийг шалгана уу:

5v - A0 - Negro del conector de batería кабель

Кабель нь 5V -тэй, өөр өөр мэдрэгчтэй, A0 -ийн дэлгэцтэй байдаг.

Нэмэлт кабель кабель Negro que viene el Arduino y el cable rojo que viene del conector.

una vez los tengamos en este orden soldamos para que la electricidad pase entre ellos.

9V мэдрэгчтэй кабелийн холболт нь чухал ач холбогдолтой бөгөөд энэ нь ямар ч холболтгүй байдаг.

Алхам 2: Кодиго Ардуино

Хамгийн сайн нь Arduino vamos 2 casdigo que nos va a lisenzer 2 casd:

  1. Автобусны машинаар явах боломжтой
  2. Өөр өөр үйлчилгээ үзүүлдэг вэбсайтууд

Vamos a explicar un poco el código, si no no quieres entenderlo a profundidad luego de la explicación esta el código completo or donde descargarlo.

Тэмдэглэл нь номын сангийн дарааллаар хийгдсэн бөгөөд бамбай сүлжээний цуваа юм.

#оруулах

#оруулах

Тоглоомын нууц үг нь PIN кодыг задлахад маш чухал үүрэг гүйцэтгэдэг.

#тодорхойлох QUAKEALARM A0

Хувьсах хэмжигдэхүүнүүд нь маш олон янз байдаг.

static int diferencia;

int qaVal = 0; int qaPreVal = 0;

int босго = 10;

int intervaloTiempo = 5000; // Интерфейс нь вэб серверт зориулагдсан болно

урт

ultimaConexion = 0; // Tiempo en milisegundos desde la ultima conexion al servicio web

Ethernet, MAC de la tarjeta de red, a IP -ийн тодорхойлолтууд нь EthernetClient -ийг ашиглахад маш чухал үүрэг гүйцэтгэдэг. Тэмдэглэл нь IP хаягийг тодорхой зааж өгсөн болно.

байт mac = {0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED};

байт ip = {192, 168, 15, 120}; // Direccion IP del Arduino

байт

сервер = {192, 168, 15, 111}; // Direccion IP сервер

EthernetClient үйлчлүүлэгч;

Хувьсах хэмжигдэхүүнүүд, номын сангийн жагсаалтууд нь Arduino програмын хамгийн том програмуудын нэг юм.

  • Incializamos цуврал 57600
  • Luego le decimos al arduino que el pin A0 (doimiye QUAKEALARM) энд vamos a usar como un pin de entrada байна.
  • Төгсгөлд нь улаан өнгө оруулсан болно.

void setup () {Serial.begin (57600); pinMode (QUAKEALARM, INPUT);

Ethernet.begin (mac, ip); // Internetizamos el Ethernet Shield

}

Нэмэлт програм хангамжийн програмууд нь хамгийн багадаа 5V -ээс хэтрэхгүй байх ёстой. Тэмцээний үндсэн хэсэг нь мэдээллийн сүлжээнд байгаа бөгөөд энэ нь хамгийн чухал мэдээлэл юм.

void loop () {

qaVal = analogRead (QUAKEALARM); diferencia = qaPreVal - qaVal;

хэрэв ((diferencia> 0) ба (diferencia> = босго) ба ((millis () - ultimaConexion)> intervaloTiempo)) {

contador = contador + 1;

Serial.print ("Sismo!");

Serial.println (contador);

ultimaConexion = millis ();

if (client.connect (сервер, 5002)> 0) {

Serial.println ("Conecto");

client.print ("GET /? sismo = 1"); // GET авахын тулд Enviamos los datos

client.println ("HTTP/1.0");

client.println ("Хэрэглэгч-Агент: Arduino 1.0");

}

client.stop ();

client.flush (); }

qaPreVal = qaVal;

}

Төлбөрийг github.com/bettocr/alertasismo дээрээс татаж аваарай

Бүрэн дуусгах:

#оруулах

#оруулах

// QuakeAlarm

#тодорхойлох QUAKEALARM A0

// QuakeAlarm -ийн хувьсах хэмжигдэхүүн

static int diferencia;

int qaVal = 0;

int qaPreVal = 0; int босго = 10; int intervaloTiempo = 5000; // Intervalo de tiempo entre dos llamadas al servicio web long ultimaConexion = 0; // Tiempo en milisegundos desde la ultima conexion al servicio web

// Ethernet хувьсагчууд

// Лос валорес нь MAC, орон нутгийн IP, Puerta de Enlace y Máscara de Red, байт mac = {0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED}; байт ip = {192, 168, 8, 20}; // Direccion IP del Arduino байтын сервер = {192, 168, 8, 11}; // Direccion IP del servidor EthernetClient клиент; void setup () {Serial.begin (57600); pinMode (QUAKEALARM, INPUT); // Ethernet Ethernet.begin (mac, ip); // Inhernizamos el Ethernet Shield}

void loop () {

qaVal = analogRead (QUAKEALARM);

diferencia = qaPreVal - qaVal;

хэрэв ((diferencia> 0) ба (diferencia> = босго) ба ((millis () - ultimaConexion)> intervaloTiempo)) {

contador = contador + 1; Serial.print ("Sismo!"); Serial.println (contador); ultimaConexion = millis (); if (client.connect (server, 5002)> 0) {Serial.println ("Conecto"); client.print ("GET /? key = 1122334455 & sismo = 1"); // Enviamos los datos GET client.println ("HTTP/1.0"); client.println ("Хэрэглэгч-Агент: Arduino 1.0"); } client.stop (); client.flush (); } qaPreVal = qaVal; }

Алхам 3: Codigo Python

Кодиго Питон
Кодиго Питон

Тайлбарыг буцааж англи (Америкийн Нэгдсэн Улс) руу орчуулах Орчуулах 5002 del servidor (yo lo uso en un Raspberry Pi en mi casa), a recise el aviso del Arduino para luego enviar un Tuit.

PUSH -ийн мэдэгдлийг гүйцэтгэхийн тулд ирээдүйд ашиглах боломжтой болно.

Apps.twitter.com дээр хэрэглэгчийн түлхүүр (API Түлхүүр), Хэрэглэгчийн Нууц (API Нууц), Access Token y Access Token Secret -ийг ашиглах боломжтой болно. y en la función tweet cambiar las xxxxx портал хүндэтгэлтэй хандана уу.

Дахин татаж авахын тулд github.com/bettocr/alertasismo эсвэл хуулбарыг үргэлжлүүлээрэй.

#!/usr/bin/python2.7

#-*-кодчилол: utf-8-*-

импортлох хүсэлт, urllib2, urllib, tweepy

колбоны импортоос Колбо, хүсэлт

StringIO -аас StringIO импортлох

datetime -аас datetime импортлох, timedelta

Def жиргээ (mensaje):

CONSUMER_KEY = 'xxxxxxx'

CONSUMER_SECRET = 'xxxxxxxx'

ACCESS_KEY = 'xxxxxxxx'

ACCESS_SECRET = 'xxxxxxxx'

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 (төлөв = mensaje)

апп = Колбо (_ нэр_)

@app.route ("/", арга = ['АВАХ'])

def sismo ():

оролдоно уу:

sismo = request.args.get ("sismo")

хэрэв (str (sismo) == "1"):

t = datetime.now ()

hora = t.strftime ("%-I:%M%p")

жиргэх ("[En Pruebas] Боломжит хэллэг ("+hora+")")

IOError алдааг эс тооцвол: 'Fallo' гэж хэвлэ

дамжуулах

e -ээс бусад онцгой тохиолдлыг эс тооцвол:

"Онцгой байдал"+str (e) хэвлэх

дамжуулах

буцааж "OK"

Алхам 4: Финалын тоглолтуудыг тодруулна

Төгсгөлийн финал
Төгсгөлийн финал
Төгсгөлийн финал
Төгсгөлийн финал
Төгсгөлийн финал
Төгсгөлийн финал
Төгсгөлийн финал
Төгсгөлийн финал

Como Pasos adicionales para darle una mejor төсөөлөөд үз дээ

  • Corte la Placa de Circuito нь хамгийн их ашиг тустай байдаг.
  • НҮБ -ын mototool нь маш их хүчин чадалтай бөгөөд хамгийн өндөр чанартай байдаг.
  • Ухаалаг материалын хувьд 3 кабелийг солино.
  • Тайлбарыг буцааж англи (Америкийн Нэгдсэн Улс) руу орчуулах уу?

Тайлбарыг буцааж англи (Америкийн Нэгдсэн Улс) руу орчуулах Орчуулах Pueden seguir el bot que hice con estos pasos en @SismoTico

Зөвлөмж болгож буй: