Recientemente decidimos con los estudiantes usar Arduino para observar la temperatura y humedad alrededor de la escuela y analizar los valores.
Necesitábamos una tarjeta SD para guardar los datos medidos por Arduino, y era un inconveniente retirar la tarjeta SD para verificar los datos.
De repente pensé en almacenar los datos en la web.
El artículo de hoy trata sobre el primer paso para conectar Arduino con Google Sheets, que es la configuración de la hoja de cálculo de Google.
1. Hoja de cálculo de Google
La hoja de cálculo de Google es una aplicación web gratuita proporcionada por Google.
Funciona principalmente en el navegador, permite la edición y visualización conjunta, y se puede modificar la hoja a través de apps script con solicitudes https.
Primero, busca "Google Sheet" en Google y crea una hoja.

Al iniciar sesión, aparecerá una ventana como esta. Presiona la hoja de cálculo en blanco para crear una nueva hoja.

Si se ha creado una nueva hoja, haz lo siguiente.
Cambia el título de la hoja de cálculo y el nombre de la hoja a inglés (para evitar posibles errores).
Crea un índice para las columnas de datos.


Recuerda el ID de la hoja de cálculo en la barra de direcciones.
El formato de la dirección es '/d/ID de la hoja de cálculo de Google/edit#gid=0'. Copia la parte del medio.

Ahora el trabajo básico en la hoja de cálculo de Google ha terminado. Ahora configuraremos el script de la hoja.
2. Configuración del script de la aplicación
Ve al menú de la hoja, [Extensiones] - [Apps Script].

Verás una ventana como esta. Ahora ingresa el código que desees en la función.

Introduce el siguiente código. Aquí, el ID de la hoja de Google y el nombre del valor deseado deben especificarse utilizando declaraciones switch y case.
function doGet(e) {
Logger.log( JSON.stringify(e) );
var result = 'Ok';
if (e.parameter == 'undefined') {
result = 'No Parameters';
}
else {
var sheet_id = 'tu ID de Google Sheet'; // Spreadsheet ID
var sheet = SpreadsheetApp.openById(sheet_id).getActiveSheet();
var newRow = sheet.getLastRow() + 1;
var rowData = [];
var Curr_Date = new Date();
rowData[0] = Curr_Date; // Date in column A
var Curr_Time = Utilities.formatDate(Curr_Date, "Asia/Tokyo", 'HH:mm:ss');
rowData[1] = Curr_Time; // Time in column B
for (var param in e.parameter) {
Logger.log('In for loop, param=' + param);
var value = stripQuotes(e.parameter[param]);
Logger.log(param + ':' + e.parameter[param]);
switch (param) {
case 'value1':
rowData[2] = value;
result = 'Valor de value1 ingresado en la 3ª columna';
break;
case 'value2':
rowData[3] = value;
result += ' , Valor de value2 ingresado en la 4ª columna';
break;
default:
result = "parámetro no soportado";
}
}
Logger.log(JSON.stringify(rowData));
var newRange = sheet.getRange(newRow, 1, 1, rowData.length);
newRange.setValues([rowData]);
}
return ContentService.createTextOutput(result);
}
function stripQuotes( value ) {
return value.replace(/^["']|['"]$/g, "");
}Una vez completada la entrada, despliega el código. Haz clic en "Desplegar" en la esquina superior derecha y luego en "Nuevo despliegue".

En el nuevo despliegue, cambia el tipo a aplicación web, los usuarios con acceso a todos y luego presiona desplegar.
Si no cambias los permisos de acceso a todos, requerirá inicio de sesión. En ese caso, cambia los permisos a todos nuevamente.


Cuando presionas desplegar, solicita permiso de acceso. Haz clic en aprobar acceso.

Cuando aparezca la ventana de aprobación de acceso, haz clic en tu ID.

Aparece una advertencia, ignórala y haz clic en "Avanzado".

Haz clic en la sección "Ir a ~" que aparece abajo para permitir el permiso.


Después, aparece una nueva ventana de despliegue. Copia la parte de la URL de la aplicación web para verificar si se ha configurado correctamente.

3. Verificar la aplicación web
Si envías una solicitud GET a la URL de la aplicación web, los datos en la cadena de consulta se guardan en value1 y value2.
Agrega los siguientes datos al final de la URL de la aplicación web en la barra de direcciones y presiona enter.
https://script.google.com/macros/s/ID de Google App Script/exec?value1="valorDeseado1"&value2="valorDeseado2"
Esto se llama una cadena de consulta, donde se pasan datos en el formato anterior. Se agregan los valores deseados después del "?" y se unen con "&".
Si entras en Google Sheet, verás que los datos se han transferido correctamente como sigue.

No solo textos, también se pueden pasar números simples.


Los valores están bien ingresados.
4. Conclusión
En este artículo, hemos discutido cómo ingresar datos en Google Sheets simplemente usando una solicitud GET.
Ahora solo falta enviar una solicitud GET a través de la comunicación https desde Arduino.
Continuaré en el siguiente artículo.

댓글을 불러오는 중...