Sismos en México: análisis de 363,329 eventos con Python

Imagen
¿Dónde se registran más sismos en México? ¿Las entidades con más eventos también concentran los sismos de mayor magnitud? ¿Qué años destacan? En este proyecto exploramos estas preguntas utilizando datos del Servicio Sismológico Nacional (SSN) y herramientas de Data Science. URL :http://www2.ssn.unam.mx:8080/catalogo/  Los datos: más de 363 mil registros sísmicos Para este análisis utilizamos el catálogo de sismos publicado por el Servicio Sismológico Nacional de la UNAM . El conjunto de datos contiene información sobre eventos sísmicos registrados en México, incluyendo fecha, hora, magnitud, coordenadas geográficas, profundidad y referencia de localización. El catálogo utilizado contiene registros desde agosto de 2000 hasta agosto de 2026 . Después de revisar y preparar la información contamos con: 363,329 eventos sísmicos ...

Música con Arduino

En este post les quiero compartir un ejemplo de como podemos unir la música con la programación 😆, pueden hacer su propia serie navideña o agregar las mañanitas o su canción favorita.

La música son frecuencias de sonido diferente y en cada nota musical tiene un valor diferente, encontré en Wikipedia una tabla con las frecuencias por ejemplo para afinar un piano y ahí están los valores de cada nota.

Como obtener una razón entre las notas y como realizar la multiplicación para llegar a cada nota musical

432 x 1.0594623 = La#
432 x 1.0594623 x 1.0594623 = Si
432 x 1.0594623 x 1.0594623 x 1.0594623 = Do

Ahora teniendo esta información vamos hacer un programa en C++ vamos a utilizar:

  •  Placa de Arduino Uno
  •  Un buzzer (es una pequeña bocinita) encontré una liga donde explica bien que es luisllamas.es

Voy a utilizar como referencia de conexión el diagrama de mi kit de Elegoo

La foto ya armado

El programa de música con Arduino en C++

int buzzer = 12;//the pin of the active buzzer

const int notas[] = {261.63, 277.18, 293.96, 311.13, 329.63, 349.23, 369.99, 392, 415.30, 440, 466, 493.88};

const int man[]= {293.66,293.66,391.99,415.30,369.99,391.99,440,369.99,391.99,440,493.88,391.99,440,493.88,261.62,261.62,261.62,493.88,440,391.99,369.99,440,391.99,369.99,391.99,440,493.88,261.62,440,391.99,493.88,440,369.99,369.99,391.99,493.88,391.99,493.88,440,369.99,369.99,391.99,493.88,391.99,391.99,391.99,261.62,261.62,261.62,261.62,493.88,391.99,369.99,391.99,440,493.88,261.62,440,391.99,293.66,391.99,369.99,391.99,391.99,369.99,391.99,391.99,391.99,493.88,440,391.99,369.99,391.99,440,440,293.66,293.66,391.99,440,440,391.99,440,440,493.88,261.62,493.88,493.88,440,440,369.99,391.99,440,391.99,369.99,329.62,369.99,391.99,440,391.99,440,493.88,261.62,493.88,261.62,261.62,493.88,261.62,493.88,440,391.99,369.99,391.99,440,493.88,493.88,493.88,261.62,493.88,493.88,440,440,369.99,391.99};

char valor = 'B';

void setup()

{

 pinMode(buzzer,OUTPUT);//initialize the buzzer pin as an output

}

void loop()

{

  switch ( valor )

      {

         case 'A':

          /*notas*/

           for (int i = 0; i < 10 ; i++)

             //pasamos por todas las notas

           {

             tone(buzzer, notas[i],250);

             delay(1000);

           }

          noTone(buzzer);

          break;

         case 'B':

         /*mañanitas*/

          for (int i = 0; i < 123 ; i++)

             //pasamos por todas las notas

           {

             tone(buzzer, man[i],(60000/120)/2);

             delay((60000/120)+50);

           }

          noTone(buzzer);

         break;

      }   

Un vídeo de como lo escuchamos

Vídeo de las notas musicales

Vídeo de las mañanitas

Podemos hacer un programa uniendo el teclado Hexadecimal y que cada tecla sea una melodía diferente. Pueden intentarlo.

El programa del teclado Hexadecimal lo vimos en esta liga http://www.programacionparatodos.com/arduino-y-teclado.html

Espero les haya gustado la publicación, lo intente y nos compartan, recuerden pueden seguirnos en este blog o en Facebook.



Si quieren comprar su tableta de Arduino les recomiendo comprarlo en la siguiente liga Tarjeta De Desarrollo Uno R3 Compatible Arduino + Cable Usb  y los sensores les recomiendo comprarlos en kit Súper Kit De Inicio Lafvin Uno Project Para Arduino Uno R3 Mega2560 Mega328 Nano Con Tutorial

Comentarios

🚀 Mantener este blog funcionando requiere tiempo y café. ¡Puedes contribuir con uno aquí!

Entradas más populares de este blog

Guía Práctica: Ejemplo Completo de ASPX para Desarrolladores Web

👉 Cómo obtener el tipo de cambio en Excel con API de Banxico (paso a paso)

Macro en Word para automatizar documentos: genera diplomas en segundos (con código VBA)