Entradas

Mostrando entradas de 2014

Material density detection system used to create wet wipes with Arduino 2/2

Imagen
Construction of the final prototype Components used The components used have been, per module: Density Bar 1 - Arduino Pro Mini 5v 4 - LDRs 4 - Resistors 1k 2 - PCB Terminal Blocks Communication bar 1 - Arduino Pro Mini 5v 1 - LM2596s DC-DC step down power supply module 2 - PCB Terminal Blocks 1 - Voltage regulator TIP220 1 - Heat Sink for TIP220 1 - Rectangular LED 6W 630lm 6500K COB 170 x 15 mm. Industruino 1 - Industruino PROTO kit 1 - Relay module Keyes_SR1 Arduino with screen 1 - Arduino UNO R3 1 - 16x2 Character LCD module with I2C 3 - Resistors 10k 2 - Resistors 220 1 - LED Red 1 - LED Green 3 - Buttons 1 - Relay module Keyes_SR1 Assembly of the circuit The Fritzing scheme is as follows: Density bar Circuit that manages the density bar This circuit is responsible for obtaining the measurements and send notifications to the communications bar for redirection. Communication bar Circuit that manages the c

Información sobre temperatura y discos duros en la cubietruck (cubieboard 3)

Obtención de la temperatura de la cubietruck: Se ha de crear un script que contenga el siguiente código: #!/bin/bash cat /sys/devices/platform/sunxi-i2c. 0 /i2c- 0 / 0 - 0034 /temp1_input | awk '{ printf ("CPU Temperature = %0.1f°C\n",$1/1000); }' La ejecución del script que se acaba de crear es la siguiente: CPU Temperature = 52.2°C Información de los discos: smartmontools Para obtener la información de los discos se puede utiliar el paquete smartmontools: apt-get install smartmontools Para obtener la información de la unidad sda1: smartctl -A /dev/sda se obtiene una información similar a: smartctl 5.43 2012-06-30 r3573 [armv7l-linux-3.4.61+] (local build) Copyright (C) 2002-12 by Bruce Allen, http://smartmontools.sourceforge.net === START OF READ SMART DATA SECTION === SMART Attributes Data Structure revision number: 16 Vendor Specific SMART Attributes with Thresholds: ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED

Pasos seguidos para crear un sistema de backup online usando el BitTorrent y una Cubietruck (Cubieboard 3)

Consideraciones iniciales sobre el artículo En este artículo se detallan los pasos seguidos para instalar el Lubuntu en una Cubietruck (Cubieboard 3) y el BitTorrent Sync. Los pasos detallados son los que yo he seguido y que a mí me han funcionado. En mi caso en la tarjeta SD está el sistema operativo y las aplicaciones, en el disco duro sólo se encuentran los ficheros del BitTorrent Sync. Instalación del sistema operativo en tarjeta SD En este apartado se detallan los pasos para realizar la instalación del Lubuntu dentro de la tarjeta SD. Consideraciones iniciales Para realizar los pasos detallados a continuación se ha utilizado un sistema Ubuntu. La tarjeta SD estaba montada como sdb . Instalación del sistema operativo dentro de la tarjeta SD El sistema operativo sobre el que se han realizado las acciones siguientes ha sido el Lubuntu para la cubieboard, aunque la versión de linux sobre la que se ejecuten no debería de importar. Los pasos seguidos han sido los sigui

Líneas mínimas a añadir al código del Industruino para usar las librerías m2tklib

Según mi experiencia creando menús y formularios dentro del Industruino usando las librerías m2tklib, el código mínimo a añadir a un fichero de código es el siguiente: Includes mínimos #include < U8glib.h > #include < M2tk.h > #include < utility/m2ghu8g.h > Declaración del tipo de pantalla Esta declaración se ha de descomentar, si ya está o añadir al código. U8GLIB_MINI12864 u8g(21, 20, 19, 22); Gestión de botones uint8_t uiKeyUpPin = 7; uint8_t uiKeyDownPin = 3; uint8_t uiKeySelectPin = 2; uint8_t uiKeyExitPin = 0; int adc_key_in = 0; int read_LCD_buttons_original() //routine to check button inputs and pass the correct button event to GUI { adc_key_in = analogRead(A5); // read the value from the sensor delay(5); //switch debounce delay. Increase this delay if incorrect switch selections are returned. if (adc_key_in < 100) return M2_KEY_NONE; // We make this the 1st option for speed reasons since it will be the most likely result if (a