Piano de frutas sólo con Arduino

Siempre se ve el clásico ejemplo del piano de bananas. Cuando decidí probar hacer mi propio piano de frutas, encontré que todos los caminos me conducían a Makey Makey.

Sin embargo, buscando un poco más encontré en este posteo del blog untitled.es, la manera de hacer un piano de frutas sin utilizar Makey Makey.

Pagando con un twitt se pueden descargar el plano y el código para realizar un piano de frutas.

El código descargado comienza con esta hermosa leyenda:

/*
Realizado por http://Untitled.es 
Descubre nuevos tutoriales todas las semanas.

Puedes utilizar este ejemplo para lo que te apetezca: 
- Modificarlo 
- Venderlo 
- Leerlo en forma de cuento antes de dormir

Incluso, si decides añadirlo a tu proyecto, puedes compartir la fuente.
*/

Y después de varios intentos, cambiar esto y aquello, desconectar todo y empezar por una sola fruta, descubrí que mi primer piano de frutas no sonaba porque le había puesto una resistencia demasiado grande.

Finalmente, mi código de dos notas (y un led “testigo” en el pin 13) quedó así:

int nota1 = 261;

int nota2 = 1046; 

int zumbador = 8;

void setup() {

  Serial.begin(9600);

  pinMode(zumbador, OUTPUT);  

}

void loop() {

  Serial.print("Analog 1: ");

  Serial.println(analogRead(0));

  if (analogRead(0)<=1020) {

    digitalWrite(13, HIGH); 

    tone(zumbador, nota1);

    delay(100);

    noTone(zumbador);

    digitalWrite(13, LOW);

    }

  if (analogRead(1)<=1020) {

   tone(zumbador, nota2);

    delay(100);

    noTone(zumbador);

    }

    }

Actualizando mi versión de Linux

Bueno, tenía un Huayra viejito instalado por Euge Núñez hace unos cuatro años, y ya no daba para más.
Así que empecé por comprar una notebook con Windows y tuve que hacer allí la copia de seguridad. Luego, descargar un Debian y crear el pendrive instalable.
Aquí relato mis desventuras…
1) Siempre que intenté crear una red en casa fracasé. Esta vez me lo tomé en serio y seguí estos pasos: Configurar servidor Samba para transferir archivos entre Linux y windows

2) Las carpetas se veían y podía copiar un archivo. De todas formas me tiraba muchos errores de permisos hasta que empecé a editar los permisos de las carpetas en Linux, con el botón derecho, permisos, y le di todos los permisos a todos los usuarios y allí tuve éxito de verdad.

3) Luego busqué instrucciones para instalar linux. Según leí no era bueno actualizar por terminal porque lo que yo quería era cambiar de versión. Así que me descargué un Debian. Primero tuve que averiguar si mi computadora era de 32 o de 64 bits. Para ello utilicé el comando lscpu.

alumno@huayra:~$ lscpu
Architecture: i686
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian

4) No logré entender las instrucciones para  “Network Instal from a Minimal CD” (recomendada cuando uno tiene una buena conexión a Internet y va a realizar la instalación en una sola computadora), así que al final me bajé la versión live de 64 bits y luego de ejecutar Debian desde un pendrive elegí la opción “Instalar”. Todo anduvo de maravillas.

5) No funcionaba el sonido después de la instalación, y después de probar algunas cosas con los drivers, me di cuenta de que tenía desenchufados los parlantes… ja!

Un amigo, cuando le comenté lo del sonido me indicó cómo empezar con el tema. Estos comandos pueden ayudarte a detectar componentes:
lshw (hay que instalarlo)
lspci
lsusb

Estoy re contenta con mi computadora con Debian!

 

Servo motor 9g Tower Pro

Este es el esquema de conexiones del Micro servo 9g Tower pro

  • cable anaranjado – va a un pin de tipo PWD (los de la tilde de la eñe)
  • cable color marrón – GND (tierra)
  • cable color rojo – +5v

Con este código se lo puede hacer funcionar:

#include <Servo.h>

Servo servo1;

void setup() {
Serial.begin(9600);
servo1.attach(9);

}

void loop() {
servo1.write(0);
delay(1000);
servo1.write(90);
delay(1000);
servo1.write(180);
delay(1000);
}

Crear un formulario en PHP (con campos obligatorios)

Si tenemos una página web y queremos recibir algún tipo de comentarios, probablemente estemos buscando la manera de crear un formulario. Si la página está hecha con un CMS (como WordPress), existen formularios prediseñados que resuelven el problema de una vez.

Pero en el caso de no tener esa posibilidad, lo que necesitamos es tener en nuestro hosting la posibilidad de ejecutar un archivo de tipo PHP. Este es un formulario que yo uso y funciona, aquí está el archivo para descargar y usar como base.

Después de mostrar este formulario me pidieron que hubiese campos obligatorios… ¡otro trabajo interesante!

Para lograrlo, desarmé por completo ese formulario y armé otro, con dos archivos de PHP:

1) El usuario completa los datos y pone “enviar”

2) Se ejecuta el segundo archivo que se fija si hay determinados campos vacíos. Si están vacíos, vuelve al archivo PHP anterior pero enviándole los valores ya completados por el usuario (para que no tenga que escribir todo otra vez).

3) Se vuelve a ejecutar uno y otro PHP hasta que, al estar completos todos los campos, se envía el mail a la dirección configurada.

Para lograr crear ese formulario me basé en varios posteos que encontré en la web, pero básicamente me salvó uno muy breve que explicaba el uso de la función empty: si la variable “nombre” está vacía, escribir ….

if(empty($_POST[‘nombre’])) {
echo “<p>Es necesario que completes tu nombre.</p> “;
}

Aquí los dos formularios, el primero llamado contacto.php y el segundo llamado procesar.php:  formularios.rar

Es importante también repasar estos consejos, para evitar que nuestro formulario sea una barrera para personas con discapacidad: Consejos para crear un formulario accesible

Mis últimas lecturas

Mil soles espléndidos, del escritor afgano Khaled Hosseini.

2013-04-29 18.25.41Impresionante y durísima historia de vida de dos mujeres afganas, que viven la democracia y luego el relegamiento de las mujeres en el mundo talibán, debiendo abandonar todo sueño de crecimiento, de tener servicio de salud, de estudiar… y de mostrar su rostro en público.

Lo bello y lo triste, del escritor japonés Yasunari Kawabata.

Encontré algo de belleza en los paisajes y las personas, pero mucha, mucha tristeza y locura. Hermoso libro.

Los desposeídos, de la escritora estadounidense Ursula K. Le Guin

Una muy interesante historia de dos planetas, uno muy similar a nuestra Tierra capitalista, y otro similar a un utópico comunismo. Las especulaciones filosóficas que hace la autora sobre los conflictos internos de ambas sociedades son realmente interesantes.

Marlene, de la escritora argentina Florencia Bonelli

Un libro simple, probablemente una novela rosa, pero la verdad, me divirtió mucho y lo leí rapidísimo (eso significa que logró atraparme)

 

Derechos e izquierdos de autor

Escribí este texto sobre el tema y lo comparto aquí con ustedes… como saben, mi blog resulta para mí misma el mejor lugar donde guardar todo lo que puedo querer encontrar en algún momento.

 

Derechos e izquierdos de autor

En Argentina, cuando alguien produce una obra, esa obra está protegida automáticamente. No es necesario hacer nada para tener todos los derechos reservados.
Esto significa que si publicamos algo en un blog, en un libro, en una página web, sólo nosotros, los autores, tenemos derecho de distribuir la obra, modificarla, venderla.
Pero, ¿qué pasa cuando lo que queremos es que nuestra obra circule libremente, para promoverla, para que se conozca, para que no necesiten pedirnos permiso para usarla? En ese caso, podemos elegir reservarnos algunos derechos, liberando parte de ellos.

Copyleft: Izquierdos de autor

Como contrapartida del concepto del Copyright (copy = copia, right= derechos se traduce como “derecho de copia”), surge el concepto de Copyleft, que algunos autores traducen como izquierdos de autor:

“El copyleft es un concepto político antes que legal, que quiere hacer realidad la célebre fórmula ciberpunk: “la información quiere ser libre”, o la sesentayochista: “prohibido prohibir”. Con este propósito, el instrumento jurídico del que se ha dotado el movimiento del software libre han sido las licencias de la Free Software Foundation: la Licencia Pública General GNU para los programas de software (GNU-GPL), la Licencia Pública General Menor para las librerías informáticas (GNU-LGPL) y la Licencia de Documentación Libre GNU para los manuales técnicos (GNU-FDL).”

(Fuente: http://biblioweb.sindominio.net/telematica/faq_edicion.html#htoc1)

Practicamos este concepto cuando explicitamos mediante el uso de una licencia que permitimos la libre distribución de nuestro trabajo, permitimos la copia, permitimos las modificaciones siempre que se mantengan estos derechos sobre las obras derivadas (es decir: permito que utilicen un texto que yo escribí, siempre mencionando mi autoría del trabajo original, pero no permito que alguien le ponga al nuevo texto todos los derechos reservados)

Software libre, software privativo, software de código abierto

La primera aclaración necesaria es que llamamos software a los programas, es decir, a aquella parte de un sistema informático que no es tangible (no es un artefacto electrónico ni un insumo como el papel o la tinta).
Cuando hablamos de una página web realizada con un programa como Moodle, estamos hablando de software.
En un principio, repitiendo el modelo editorial o discográfico, el software utilizó licencias de tipo todos los derechos reservados. Este software se denomina privativo porque priva al usuario de unos derechos que naturalmente tendría, ya que la tecnología lo permite: es más simple copiar, modificar, distribuir un programa, que evitar la copia, evitar la distribución, evitar las modificaciones.
Sin embargo, era costumbre entre los programadores, compartir programas pequeños que podían servir para todos, mejorar esos programitas y compartir las nuevas versiones. Cuando algunas personas empezaron a notar que esos códigos compartidos eran registrados por empresas y restringido su uso incluso para el propio autor, decidieron que debían proteger su manera de compartir para que nadie pudiera apropiarse de ese material de libre circulación (Para profundizar acerca del surgimiento del software libre: http://es.wikipedia.org/wiki/Software_libre)

Así surge el proyecto GNU y el concepto de software libre, el software que brinda al usuario cuatro libertades:

(Fuente: Wikipedia)

Libertad / Descripción
0 la libertad de usar el programa, con cualquier propósito.
1 la libertad de estudiar cómo funciona el programa y modificarlo, adaptándolo a tus necesidades.
2 la libertad de distribuir copias del programa, con lo cual puedes ayudar a tu prójimo.
3 la libertad de mejorar el programa y hacer públicas esas mejoras a los demás, de modo que toda la comunidad se beneficie.

Las libertades 1 y 3 requieren acceso al código fuente porque estudiar y modificar software sin su código fuente es muy poco viable.

Estas libertades están expresadas a través de una licencia, que es un texto de validez legal donde se indica qué elige el autor de la obra para proteger o liberar su propia obra.
Posteriormente surge el software de código abierto, que es aquel que brinda su código a los usuarios pero que no brinda las cuatro libertades antedichas, por ejemplo, no permite que las obras derivadas se distribuyan.

Derechos de otras obras

Los textos, las fotografías, los dibujos, las películas… los derechos de toda obra creada por un ser humano pueden ser regulados a través de dispositivos legales. Para estas obras existen, además del consabido “Todos los derechos reservados”, algunas otras formas de ser protegidas:
Dominio público Las obras de dominio público son aquellas que pertenecen a toda la sociedad, debido a la expiración del plazo de protección de los derechos de autor. Pertenecen a todos, que no es lo mismo que no pertenecer a nadie. La diferencia es que si algo no pertenece a nadie, es posible que se apropien de ello. En cambio, cuando una obra está en dominio público, nadie puede apropiarse de ella.

En España, así como el resto de la Unión Europea, el plazo post mortem auctoris asciende a 70 años, el mismo plazo se ha establecido en Argentina, mientras que en México son 100 años, y en Uruguay 50 años según la ley 17.616.

Fuente: http://es.wikipedia.org/wiki/Post_mortem_auctoris

 

Licencias Creative Commons
Creative Commons es una organización sin fines de lucro que nos brinda herramientas legales para proteger nuestros derechos. Las licencias Creative Commons constituyen una herramienta legal para que un autor se reserve algunos derechos, con el objetivo de fomentar la libre circulación, copia, modificación, etc.

Cada licencia ayuda a los creadores -los llamamos licenciantes si usan nuestras herramientas- a mantener sus derechos de autor al mismo tiempo que permiten a otros copiar, distribuir, y hacer algunos usos de su obra, al menos de forma no comercial. Todas las licencias Creative Commons permiten también que los licenciantes obtengan el crédito que merecen por sus obras. Las licencias Creative Commons funcionan alrededor del mundo y duran tanto tiempo como sea aplicable el derecho de autor (pues se basan en el derecho de autor). (Fuente: http://creativecommons.org/licenses/)

Un autor elige qué derechos quiere reservarse, por ejemplo:
El derecho a la atribución: hay que mencionar al autor siempre que se utilice la obra.
El derecho a la creación de obras derivadas: ¿pueden otras personas crear una obra utilizando esta como base, o sólo puede utilizarse la obra tal como está?
El derecho a determinar que todas las obras derivadas se compartan a través de la misma licencia.
El derecho al uso comercial: es un concepto muy discutido, ya que no queda claro qué significa exactamente uso comercial.

Fuente: http://creativecommons.org/licenses/

Tips Moodle 2: Mail con la información de acceso

Al matricular usuarios mediante un archivo CSV (Comma Separated Values), podemos dejar en blanco el campo “password”. En ese caso, Moodle creará una contraseña provisoria y les enviará un mail a todos los usuarios recientemente matriculados, con el siguiente texto:

Hola, Iris Fernández,

Se le ha abierto una nueva cuenta en ‘nombre del sitio’
y se le ha asignado una nueva contraseña temporal.

La información para entrar es:
nombre de usuario: irisprueba
contraseña: w*@pq
(deberá cambiar su contraseña cuando acceda por primera vez)

Para comenzar a usar ‘nombre del sitio’, entre en
campus.mimoodle.com.ar/login/

En la mayoría de programas de correo electrónico, debería aparecer en forma de enlace azul sobre el que simplemente puede hacer clic. Si eso no funciona, copie y pegue la dirección en la barra de direcciones del navegador.

Un saludo del administrador de ‘Sitio’,

Firma (nombre del sitio / mail de soporte)

Mamá, imprimime otro vaso y otro plato que traje a comer a mi novio

La mesa está lista para recibir a todos los invitados. Pero resulta que hay cosas que no se contemplaron. Viene la sobrina de dos años. ¿Dónde se sienta? Qué engorroso, hay que imprimir una sillita alta para la nena. Como si no tuviera nada que hacer, dice la madre.  

Mientras se imprime la silla aparece la hija adolescente: “Mamá, imprimíte otro vaso y otro plato que traje a mi novio“. Pero, qué cosa, con todo lo que tengo que hacer, protesta la madre nuevamente, pegándole de costadito a la impresora 3D porque no arranca.

La cena familiar transcurre con conversaciones iguales a las de siempre, porque los seres humanos somos escencialmente los mismos independientemente de la tecnología. Conversaciones sobre peleas, envidias, luchas por el poder en los ámbitos laborales, se mezclan con gestos de cariño y celos de los padres hacia la hija. Salen hamburguesas de la impresora porque a los sobrinos no les gustó el pollo a la crema. Cuando yo era chica comíamos lo que había, no te podías quejar porque lo que había, había, protesta la abuela.

Termina la cena y se van las visitas. Hija, ayudame con todo esto. La hija adolescente, lava y seca vasos, platos, sillita alta y otros elementos, y los destruye en una máquina que vuelve a obtener el plástico para realizar nuevos objetos. Y ya que está se imprime otra funda para el celular así tiene olorcito a nuevo, y el nombre de su novio y de su banda de rock favorita de la semana.

 

Impresoras en 3D.

Increíble. Revolucionario. Mucho más de lo que puede ocurrírsenos ahora. Podemos leer artículos como este:

De la imaginación a la computadora y de ahí a la realidad. Se espera el boom de las impresoras 3D, tecnología rodeada de polémica. Por un lado, estos dispositivos representan un importante avance en materia de diseño industrial, arquitectura y medicina. El potencial comercial de estas máquinas es abismal, se pueden materializar desde juguetes hasta prótesis para el organismo humano. Sin embargo, la expansión de estos artículos es tan grande que incluso ya se empiezan a utilizar con fines bélicos. La CIA ha alertado que esta tecnología facilitaría la producción de armas caseras, y es que una corporación sin fines de lucro en Texas llamada Defense Distributed logró desarrollar el primer prototipo de plástico.

 (Tendencias tecnológicas, Azteca noticias)

Y lo increíble es que esté tan cerquita, tanto, que alguien que muchos conocemos del ámbito del software libre está detrás de todo esto por estos pagos del sur:

Un cordobés está detrás de la primera impresora 3D nacional. Federico Heinz desarrolló un ejemplar que imprime cualquier objeto en plástico. En el mundo ya hay modelos que usan metal o células humanas como tinta. Cuestan 7.500 pesos más IVA.

http://www.lavoz.com.ar/argentina/cordobes-esta-detras-primera-impresora-3d-nacional

Y en el mismo artículo:

“El próximo campo de batalla de la lucha contra el crimen organizado y el terrorismo será la impresora 3D”, pronostica Marc Goodman, director de Future Crimes Institute, al diario El País , de España.

“Habrá que esperar por lo menos 10 años para imprimir órganos humanos funcionales”, agrega Shaochen Chen, profesor de nanoingeniería en San Diego (EE.UU.). La empresa Organovo es la primera en comercializar una bioimpresora 3D. Usan tinta biológica formada por células vivas para crear tejidos.

Modern Meadow directamente apunta a hacer carne para consumo humano. Imprimir hamburguesas, como una forma más eficiente de producir alimentos. Por el momento sólo logró crear cueros.

Da miedo.

Demasiado poder para el ser humano. Demasiado para acaparar y vender caro. O por el contrario, la salvación de mucha gente que no tiene acceso a ciertos objetos.  El tiempo dirá.

Para los que entienden inglés: http://video.ft.com/v/1700835179001/3D-printing-bigger-than-internet-

Gracias @l3stat

Fonts para web

Armé un muestrario de font para web, para todo el que necesite mostrar qué tipos de letra pueden verse en su página web. Para usarlos, hay que usar en la hoja de estilo la propiedad Font-family. Aquí un ejemplo para usarlo en párrafos:

p.estilo1 {
 font-family: Helvetica, Geneva, Arial,
 SunSans-Regular, sans-serif;
 color:#333333;
 }
p.estilo2 {
 font-family: Arial Black, sans-serif;
 color:#6e0139;
 }

Y después en el archivo HTML, el tipo de párrafo:

<p>Este es un párrafo con el estilo de letra Helvetica, Geneva, Arial, SunSans-Regular, sans-serif;</p>
<p>Este es un párrafo con el estilo de letra Arial Black, sans-serif;</p>

El problema de estos fonts es que tienen que estar instalados en la computadora del usuario para que los visualice, por eso se usan Familias de fonts y no un sólo tipo de letra. Esta es una captura de pantalla del muestrario en Ubuntu:

Muestrario de fonts en Ubuntu

Y esta es una captura del muestrario en Windows:

Fonts en Windows

Si queremos usar un font que no está en la lista de estándares, podemos subir los archivos ttf y utilizar @font-face para incluirlo en nuestro listado de fonts:

@font-face { font-family: feliz; src:url(‘http://www.blabla.com.ar/FantasiaSerifA-Normal.otf’);

font-family: feliz; font-weight: bold; src:url(‘http://www.blabla.com.ar/FantasticaSerifA-Bold.otf’);

font-family: feliz; font-style: italic; src:url(‘http://www.blabla.com.ar/FantaseB-BookItalic.otf’); }

Después, basta con poner a un párrafo la propiedad font-family con el nuevo font, y listo. El detalle es que Internet Explorer no soporta más que un tipo de fonts, el eot (fuente: w3school):

The @font-face rule is supported in Internet Explorer 9, Firefox, Opera, Chrome, and Safari. However, Internet Explorer 9 only supports .eot type fonts, while Firefox, Chrome, Safari, and Opera support .ttf and .otf type fonts.

Otra alternativa es utilizar los fonts de Google: http://www.google.com/webfonts/# Una vez que elegimos un font, hacemos clic en “quick use”. Allí nos indica qué debemos agregar a nuestro código y cómo usar el font.

Code: <link href=’http://fonts.googleapis.com/css?family=Ledger’ rel=’stylesheet’ type=’text/css’>
Instructions: To embed your Collection into your web page, copy the code as the first element in the <head> of your HTML document. » See an example

4. Integrate the fonts into your CSS:

The Google Web Fonts API will generate the necessary browser-specific CSS to use the fonts. All you need to do is add the font name to your CSS styles. For example:

font-family: ‘Ledger’, serif;

Cómo quitar el malware Claro Search

Mis hijos usan Windows para muchos juegos, y por lo tanto una de las ocupaciones cotidianas es limpiar virus y programas maliciosos o invasivos (esto en Linux no pasa). El problema es que uno tampoco puede confiar en los sitios que prometen una solución descargando un ejecutable… ¿quién dice que ese ejecutable no es otro malware?

El último con el que tuvimos que pelearnos es el buscador Claro, que se instala de alguna manera y no permite volver a poner el navegador que uno prefiera como página de inicio.
Para removerlo, los pasos son muy sencillos (aunque son muchos pasos!!):

1) Ir al panel de control de Windows, opción Desinstalar programas (o Instalar y desinstalar programas), y buscar todo lo que diga Claro LTD.. y desinstalarlo haciendo doble clic.

2) Reestablecer el navegador, dependiendo de qué navegador sea el infectado las opciones para hacerlo son diferentes.

En este post de Malwaretips.com explica con capturas de pantalla cómo reestablecer cada navegador (Internet Explorer, Firefox y Chrome)

3) Utilizar un limpiador de registro, como este: AdwCleaner (elegir la opción Supresión o Delete)

4) Instalar un anti Malware, como Malwarebytes Anti-Malware Free y hacer un scanneo completo.

5) Hacer un doble chequeo instalando otro software. En el post de Malwaretips.com recomiendan HitManPro:

Download HitmanPro from the below link,then double click on it to start this program.

HITMANPRO DOWNLOAD LINK (This link will open a new web page from where you can download HitmanPro)

Fuente: Malwaretips.com