HARDWARE Y SOFTWARE LIBRE A NIVEL EMPRESARIAL
DEIVIS DAVID NIETO TAPIAS ESTEBAN RINCON CORREA
FUNDACIÓN UNIVERSITARIA AGRARIA DE COLOMBIA PROGRAMA DE INGENIERÍA MECATRÓNICA CURSO DE PROFUNDIZACIÓN AUTOMATIZACIÓN Y GESTIÓN DE LA CADENA DE ABASTECIMIENTO BOGOTÁ, MARZO 04 DE 2014
HARDWARE Y SOFTWARE LIBRE A NIVEL EMPRESARIAL
DEIVIS DAVID NIETO TAPIAS ESTEBAN RINCON CORREA
TRABAJO DE MONOGRAFÍA PARA OPTAR AL TÍTULO DE INGENIERO MECATRÓNICO
DIRECTORA MONOGRAFÍA INGENIERA ELIZABETH BELTRÁN
FUNDACIÓN UNIVERSITARIA AGRARIA DE COLOMBIA PROGRAMA DE INGENIERÍA MECATRÓNICA CURSO DE PROFUNDIZACIÓN AUTOMATIZACIÓN Y GESTIÓN DE LA CADENA DE ABASTECIMIENTO BOGOTÁ, MARZO 04 DE 2014
Nota de aceptaci贸n
______________________________________
______________________________________
______________________________________
______________________________________
Presidente del Jurado
______________________________________
Jurado 1
______________________________________
Jurado 2
______________________________________
Bogot谩 Marzo 04 del 2014
AGRADECIMIENTOS
Para nosotros es un placer dedicar este esfuerzo expresar nuestros más profundos y sinceros agradecimientos a todas aquellas personas que con su ayuda han colaborado en la realización del presente trabajo, en especial a nuestra directora de monografía la ingeniera Elizabeth Beltrán y a nuestro evaluador el ingeniero Alessandro Calvano, por la orientación, seguimiento y la supervisión continua de la misma. A todos los docentes de la Fundación Universitaria Agraria de Colombia que compartieron sus conocimientos, dentro y fuera de clase, haciendo posible nuestra formación profesional se resuma en satisfacciones académicas e inquietudes insatisfechas en continua indagación. A nuestros amigos y compañeros. A quienes trabajaron con nosotros hombro a hombro durante cinco cortos años poniendo lo mejor de su energía y empeño por el bien de nuestra formación profesional, a quienes compartieron su confianza, tiempo, y los mejores momentos que vivimos durante esta etapa como estudiantes de pregrado, dentro y fuera del campus. Especial reconocimiento merece el interés mostrado por nuestro trabajo y las sugerencias recibidas por nuestras familias y que siempre nos dieron el apoyo para salir adelante.
CONTENIDO INTRODUCCIÓN ..............................................................................................................................1 1. DESCRIPCIÓN DEL PROBLEMA .........................................................................................2 2. JUSTIFICACIÓN .......................................................................................................................3 3. OBJETIVOS ...............................................................................................................................4 3.1. General. ..............................................................................................................................4 3.2. Específicos. ........................................................................................................................4 4. ESTADO DEL ARTE ................................................................................................................5 4.1. SOFTWARE .......................................................................................................................5 4.1.1. Software Libre ............................................................................................................8 4.1.1.1. Clasificación del Software Libre ..............................................................................9 4.2. HARDWARE ................................................................................................................... 11 4.2.1. Hardware Libre ....................................................................................................... 12 4.2.2. Clasificación del Hardware Libre ......................................................................... 16 5. LICENCIA................................................................................................................................ 18 5.1. Tipos de Licencias...................................................................................................... 19 6. RELEVANCIA DEL PENSAMIENTO LIBRE .................................................................... 20 6.1. Dependencia de tecnologías extranjeras y sus componentes ................................ 20 6.2. Libertad de comercialización y rentabilidad ............................................................... 20 6.3. Las empresas restringen la libertad de conocimiento .............................................. 21 6.4. Diseño redundantes ....................................................................................................... 21 6.5. Panorama nacional ........................................................................................................ 21 7. PROPUESTA INNOVADORA ............................................................................................. 23 7.1. Lenguaje PHP (Hypertext Preprocessor) ................................................................... 23 7.1.1. Comunicación con PHP................................................................................................. 24 7.2. Descripción de la idea innovadora. ............................................................................. 24 7.3. Pasos para implementar la propuesta ........................................................................ 26 8. PROYECTOS NOTABLES .................................................................................................. 28 CONCLUSIÓNES .......................................................................................................................... 32 GLOSARIO ..................................................................................................................................... 35 REFERENCIAS .............................................................................................................................. 37 ANEXO 1 ......................................................................................................................................... 40 PROGRAMA DE ARDUNO COMUNICACIÓN SERIAL .......................................................... 40 ANEXO 2 ......................................................................................................................................... 41 PROGRAMA DE PROCESSING COMUNICACIÓN SERIAL ................................................. 41
LISTA DE TABLAS Pág. Tabla 1.
Estadística sobre los tipos de licencias más usadas…….......
18
LISTA DE FIGURAS Pág. Figura 1 Línea del tiempo del Software. ................................................................ 5 Figura 2 Historia de los Equipos informáticos. ...................................................... 11 Figura 3 FORM1 Impresora 3D. .......................................................................... 15 Figura 4 DARwIn-OP. ........................................................................................... 15 Figura 5 Cuadro de clasificación de Software libre. .............................................. 18 Figura 6 Creative commons. ................................................................................. 19 Figura 7 Pasos de la propuesta innovadora. ........................................................ 26 Figura 8 Tablet (PiPad) por Michael Castor basado en Linux. ............................. 28 Figura 9 Simulador de terremotos Quakescape 3D. ............................................ 29 Figura 10 Maletín seguro que se abre en coordenadas concretas. ..................... 29 Figura 11 Teléfonos celulares por David Melis .................................................... 30 Figura 12 Open Compute Project idea de servidores propios. ............................. 30 Figura 13 Impresora 3D orientada al consumidor. ................................................ 31 Figura 14 Impresora 3D Autoreplicable. ............................................................... 31
INTRODUCCIÓN
Desde sus inicios, las estrategias empresariales han tratado de dar respuesta al interrogante del por qué, unas empresas tienen más beneficios técnicos, sociales y económicos en sus gestiones que otras. Entre las múltiples respuestas, se destaca el siguiente razonamiento: Las empresas que obtienen y potencializan su éxito en el mercado, son aquellas que han conseguido obtener una ventaja competitiva sostenible [1]1, y una de esas ventajas, es el uso del Hardware y Software libre. En este estudio se maneja el Hardware y Software libre (Libre en sentido de libertad del conocimiento), teniendo siempre presente que libre no es sinónimo de gratuidad, el Software y Hardware libre, vienen a formar parte de la cultura del libre acceso, ofreciendo al usuario un código libres para modificaciones o adaptaciones futuras. En el Hardware libre, se pueden compartir archivos de diseño para una pieza que otros pueden trasformar o realizar (incluso para fines comerciales). Existen diferentes tipos de licencias que garantizan el libre acceso y que dan una cobertura legal como la GPL (General Public License) para el Software, de igual forma el Hardware libre tiene la OHSP (Open Hardware Specification Program) y el OSHWA (Open Source Hardware Association). De igual forma por la unión del Hardware y Software libre, se permite estandarizar la fabricación de dispositivos que generan seguridad a distribuidores y usuarios. Esto les facilita la capacidad para proporcionar el desarrollo de nuevos modelos a partir de diseños realizados por otras empresas y establecimientos, lo que promueve la generación de productos innovadores para la comunidad empresarial. Al admitirse una filosofía de manejo de Hardware y Software libre, representa grandes oportunidades para las empresas que comparten los diseños de sus productos. Como consecuencia de ello, estas obtendrán grandes beneficios económicos, la respectiva revisión adicionalmente y comentarios de su diseño. La empresa que adquiere esta información, adquiere una mejora sustancial en los indicadores que reflejan la disminución del tiempo de desarrollo de sus productos.
1
Hitt et al., “Strategic management”, Hitt, M.A., Ireland, D.R., Hoskinson, R.E. y Joseph, G.L.
1
1. DESCRIPCIÓN DEL PROBLEMA
En la actualidad las empresas sufren el interrogante del por qué, unas empresas tienen más beneficios a nivel corporativo que otras entre las respuestas, se destaca el pensamiento de que las empresas que obtienen y potencializan su éxito en el mercado, son aquellas que han conseguido obtener una ventaja competitiva sostenible por el uso del Hardware y Software libre, la cual puede representar una alternativa real en un mercado libre de información. Se evidencia la restricción de algunas empresas, al limitar el mercado con marcas propias, haciendo que cualquier elemento relacionado con el Hardware, se vuelva costoso, complejo, sin posibilidad de actualización y poco compatible con tecnologías emergentes. Se ven ligados a contratar un proveedor en específico para la compra del Hardware generando unos costos, que podrían ser disminuidos sustancialmente, si tuviesen acceso al mercado sin estar atados a ese tipo de restricción de derechos de marcas y autor, fomentando una libre comercialización. En algunos casos es necesario la compra de un Software especializado, por lo tanto su costo es elevado; para cubrir ésta necesidad los usuarios son obligados, al no existir más alternativas a comprar la licencia del Software “privado”, pero si el usuario pretende hacer futuras modificaciones, obligatoriamente debe vincularse con el distribuidor de ese Software, para poder suplir las mismas, acarreando en consecuencia un mayor costo a su presupuesto.
2
2. JUSTIFICACIÓN
La razón que motivo esta investigación es identificar los beneficios empresariales del uso de tecnología libre, teniendo en cuenta que actualmente no es común el uso de Hardware y Software libre en las empresas manufactureras, laboratorios, entre otros; constituye una parte fundamental en el desarrollo empresarial. Sin embargo, las empresas que utilizan Software y Hardware libre limitan el acceso de la información concerniente al servicio requerido. Con el Open Source, los usuarios tienen el control del programa, sus costos disminuyen, al tener la oportunidad de adquirirlo en un mercado libre de restricciones y como consecuencia de ello, sus utilidades se potencializan, en cambio con el Software privado, restringe la libertad de acceder al mismo, y se limita con ello la oportunidad de ese empresario de abaratar costos y sumar en sus indicadores de gestión. La consecuencia directa de una libertad de mercado para la adquisición de “Open Source y Open Hardware” sin limitantes o restricciones para su mercadeo, sería de gran beneficio para el musculo financiero de cada pequeño y mediano empresario, ya que a mayor competencia, mejores beneficios para el consumidor. Estas razones, son el soporte para un beneficio de carácter social, con ello se implementaría la creación de nuevas empresas, lo que redundaría en fomento de nuevas plazas para empleo; repercutiendo esto, lógicamente en la disminución de las tazas de desempleo en el país.
3
3. OBJETIVOS
3.1. General. Estudiar las incidencias que acarrean el uso del Hardware y Software libre mediante el análisis de los factores que influyen en la implementación de tecnologías libres en el ámbito empresarial y en el desarrollo de las pymes. 3.2. Específicos. Conocer los diferentes tipos de Hardware y Software libre. Comparar las diferentes clases de Software y Hardware libre, interpretando cuáles son sus ventajas y desventajas. Determinar la importancia de los usos Open Source y Open Hardware a nivel empresarial. Explicar la relevancia de los beneficios empresariales que tiene el uso del Hardware libre y Software libre.
4
4. ESTADO DEL ARTE
4.1. SOFTWARE La implementación del Software está avanzando rápidamente, para llegar a lo que se conoce hoy en día se han presentado diferentes sucesos a lo largo del tiempo así como se muestra en la figura 1 donde se resaltan los momentos que han contribuido en el desarrollo del software.
Figura 1 Línea del tiempo del Software.2 [2]
Como se aprecia en la figura los años 60 y 70, el Software era un valor agregado que los representantes de ventas, especializados en el mercadeo de grandes computadoras de la época (los mainframes) adicionaban a los compradores, como un incentivo que facilitaba el flujo de sus productos, obteniendo ellos el beneficio de uso, de los mismos. En dicha cultura comercial, era común que los programadores y desarrolladores de Software compartieran libremente sus programas unos con otros, siendo una rutina para los consumidores en aquellos tiempos, como DECUS (grupo de usuarios de computadoras DEC)3 [3]. Al finalizar los años 70, aparecieron entidades que dieron inicio a la política de imponer ciertas limitaciones o prohibiciones a sus clientes, con el fin de imponer restricciones al uso de sus licencias. 2 3
« CLUB DE LEONES COLIBRÍ,» 25 02 2005. [En línea]. . BRITANNICA, «ENCICLOPEDIA BRITANNICA,» ©2014 Encyclopædia Britannica, Inc,
5
Posteriormente, cuando la relevancia de la informática no era tan trascendental, sus usuarios, en las esferas empresariales y universitarias, introducían el Software sin ninguna clase de limitaciones. En los 80, se pasó de un extremo a otro. Los equipos ordenadores de la época empezaron a usar sistemas privados, constriñendo a sus clientes a admitir escenarios condicionales que imposibilitaban ejecutar reformas al Software respectivo. En la eventualidad de que un consumidor de éste tipo de Software se encuentre con una falla en la aplicación, no le quedaba otro remedio que poner al tanto a la compañía desarrolladora, para que ella le diera solución, así tuviese personal especializado con la capacidad de solucionar el problema. Por tal razón el empresario quedaba coartado, ya que el contrato de adhesión impuesto por su proveedor le impedía realizar mejoras en el Software respectivo. Trayendo a referencia el caso de Richard Stallman, a quien en su trabajo, le obsequiaron una impresora, que provenía de una compañía externa, el aparato estaba siendo manejado en red por la mayoría de los trabajadores, dicha impresora presentaba el inconveniente de que el papel se venía obstruyendo o atascando, dejando mucho que desear, de su funcionamiento. Con el problema, de que no se presentaba ningún tipo de alarma que permitiera dar a conocer por red a los usuarios de semejante escenario. Teniendo en cuenta lo anterior, lógicamente se reflejaba en los indicadores de las órdenes de trabajo4, con las fallas en la impresora se generaba pérdida de tiempo y acumulación de trabajos pendientes. El señor Richard Stallman resuelve tomar medidas en busca de una solución del inconveniente, la cual consistía en que la impresora por medio de la red diera aviso cuando se bloqueara. Para obtener éste resultado requería acceso al código fuente de los controladores del equipo, para poner en práctica la solución propuesta solicitó al fabricante de la impresora la información necesaria, es decir el código de fuente, y el fabricante lo negó. Por las razones expuestas anteriormente, Richard Stallman, quedó prácticamente forzado a una realidad limitada al tener que escoger entre admitir por adhesión el nuevo Software privativo, en el cual se involucraban convenios de no revelamientos y terminar desplegando aún más el Software privativo, con licencias limitadas, restricciones que por políticas del fabricante se irradiarían a sus pares. Bajo estas circunstancias, Richard Stallman en 1984, inicia trabajos con un nuevo propósito, el GNU5 , posteriormente organiza la FSF6. Richard Stallman, implanta una nueva tesis para el free Software y la noción de "copyleft", motivándolo a entregar a los compradores independencia y así limitar la privatización y apoderamiento del Software7. [4].
4
OT: Ordenes de trabajo GNU Not Unix “no es unix”, unix es el sistema operativo de la época 6 FSF: Free Software Foundation 7 R. M. Stallman, Software libre para una sociedad libre. 5
6
Si se analiza el vocablo free, en español, posee doble interpretación, ya que se puede entender como libre, y a su vez como gratis, por esta razón se genera una confusión entre el freeware y el Software libre, a pesar de ser diferentes. Cuando se hace referencia freeware se habla de Software gratis, mientras que al referirse de Software libre la expresión es Open Source Software 8 [5]. A continuación se explica más afondo el Software y Software libre. El Software, es un equipamiento lógico de un ordenador digital, compuesto por los dispositivos que se requieren para ejecutar efectivamente un trabajo específico. Dichos componentes conforman una herramienta informática en la cual se localiza un procesador de texto, el cual permite a su operador efectuar sus tareas, como lo es la impresión de contenidos, a su vez el Software de sistema proporciona una interacción con los dispositivos físicos con la plataforma de ejecución. Así mismo en esta definición se incluyen: Los por menores del bosquejo trazados en una expresión de exposición de herramientas, el diseño de un flujograma, las especificaciones trazadas en locuciones formales y las exigencias del sistema. El Software acoge varias formas en distintos tiempos de su ciclo de existencia, clasificándose en: El código fuente, código de objeto y el código ejecutable. Código fuente: Siendo el conjunto de líneas que conforman el bloque de texto, escrito según las reglas sintácticas del lenguaje de programación diseñado a ser legible para las personas; se constituye en un programa de forma más simple, tal y como fue escrito por el programador, no es ejecutable por sí solo, debe cambiarse al lenguaje máquina para compilar, interpretar y ejecutar, cabe la posibilidad, de abrir con el Wordpad en los ambientes Windows. El código de inicio, se suministrara en un lenguaje de programación definitivo, escogido por el programador, entre los cuales puede optar: Basic, C, C++, C#, Java, Perl, Python, PHP. Código objeto: Está ligado a las instrucciones y datos escritos en un lenguaje que entiende el ordenador directamente: Conformado en código binario o código máquina. Proceden de la interpretación del código fuente, es una fracción del programa final y es particular de la plataforma de ejecución. Código ejecutable: Congrega los diferentes códigos creados por los programadores enlazados con las “librerías de uso general”, disponiendo así del programa final. Este es el código ejecutable para los usuarios del sistema, y es específico para una plataforma concreta tales como Windows o un sistema Hardware.
8
Clerus, «Clerus,» 14 12 2009. [En línea]. Available: http://www.clerus.org/cleru.
7
4.1.1. Software Libre
Se presenta esta definición para manifestar el verdadero significado de los programas de Software libre: Un Software libre hace referencia al concepto de libertad el cual prima sobre el valor monetario del mismo. Esta noción de libertad lleva a comprender que no se debe hacer una interpretación gramatical de la palabra libertad sino colocarla en un contexto amplio que permite un acceso ilimitado sin ningún tipo de restricción al programa. Esta contextualización de Software libre hace referencia para el usuario de la manera como él debe distribuir, estudiar, ejecutar, mejorar el Software y/o cambiarlo y en lo posible optimizar dicho programa. Estas libertades de Software, llamadas centrales se clasifican de la siguiente manera: Libertad 0: La libertad para ejecutar el programa sea cual sea el propósito. Libertad 1: La libertad para estudiar el funcionamiento del programa y adaptarlo según las necesidades — el acceso al código fuente es condición indispensable para esto. Libertad 2: La libertad para redistribuir copias y ayudar a los demás usuarios. Libertad 3: La libertad para mejorar el programa y luego publicarlo para el bien de toda la comunidad — el acceso al código fuente es condición indispensable para esto9. [4] El Software libre es muy condescendiente con el usuario, ya que le permite manejar el programa a su libre albedrio, ya sea por asunto técnico, cultural, comercial, educativo, social o político, al no tener que requerir autorización alguna del programador del Software, disfrutando con ello de la facilidad del acceso al código fuente, pudiendo así estudiar su funcionamiento. Permite de esta forma revelar funciones ocultas, investigar cómo ejecutar tareas precisas y presentar que otras perspectivas existen para instalar en el programa de acuerdo a las necesidades. La libertad de acceso permite al usuario distribuir copias del programa, así como el código fuente y la versión ejecutable con modificaciones, ya sean bajo una licencia libre o privada, según la elección del usuario. Si está llega a privatizar su modificación se restringe la misma, dejando por ende de ser libre dicho programa.
9
R. M. Stallman, Software libre para una sociedad libre.
8
Al poseer la libertad de plasmar una idea que contribuye al mejoramiento del Software, se puede reservar o difundir. Por tal razón se adquiere la potestad de transmitir el programa mejorado o no. Si se decide publicar los cambios del programa, esa publicación no tendría ninguna restricción, porque no estaría sometida a convenios de adhesión y por lo tanto no está obligado a informar a persona alguna. Sin embargo, hay normas sobre cómo se debe distribuir un Software libre teniendo en cuenta que no esté en conflicto con las libertades anteriormente mencionadas. 4.1.1.1. Clasificación del Software Libre 1)- Existe una clasificación dual relacionada directamente con el costo que se asume al momento de adquirirlo, que son: De costo cero o de costo mayor que cero. De costo cero: Como su nombre lo indica, se hace referencia rigurosamente al Software que no genera carga económica al momento de su adquisición, y la razón principal es de que es gratis. De costo mayor a cero: Este es un Software, conocido como "comercial o de pago", es decir que es puesto en el mercado con un costo. Para adquirirlo y tener derecho a su uso se debe realizar un pago. La diferencia del Software de un costo cero, con un Software de costo mayor a cero es su código libre. En el primero, su costo es totalmente independiente del número de equipos que lo posean, por ejemplo si se utiliza el Sistema Operativo GNU/Linux (en cualquiera de sus distribuciones, como Red Hat, Mandrake, Debian, Ututo) se motiva al usuario a realizar una donación por el servicio de soporte técnico del programa, más este no requiere un pago previo para ser empleado. En cambio sí se utiliza un Sistema Operativo Microsoft Windows, requiere un pago previo para la licencia de instalación de un programa, el cual está sujeto al número de equipos que desee utilizarlo. 2)- De acuerdo a la apertura del código fuente: El Software siempre es "Open Source” (Código libre) pero el código fuente puede manejarse de dos formas, código fuente libre y código fuente cerrado. De código fuente libre: Conocido también como "Open Source", este permite tener acceso al código fuente por medios alternativos inherentes al programa ejecutable, por enlaces en internet, mediante un pago “donación”. De código fuente cerrado: Distinguido como "Software cerrado", tiene limitado el acceso a su código fuente. Es decir que no puede llegar a él a través de cualquier medio, ya que se encuentra protegido por derechos de autor, sin importar si se ha pagado por él. 9
3)- De acuerdo a su protección: Hacen parte de este segmento el Software de dominio público y el que se encuentra protegido por licencia: De dominio público: Este tipo de Software carece de protección en lo referente a derechos de autor. Por lo tanto está a libre disposición de cualquier usuario. Acorde a esto, es libre de efectuar cualquier tipo de alteración, complementación que considere necesaria para su uso e inclusive puede apoderarse de éste. Protegido por licencias: Se encuentran que este tipo de Software protegido por los derechos de autor y restricciones de distribución. Por lo tanto quien desee usarlo debe solicitar licencia para su manejo. Es decir que el mismo se encuentra restringido al uso privado. Hacen parte de este selecto grupo los siguientes: Protegido con Copyright: Este Software es el que se encuentra restringido por los derechos de autor lo que implica que una vez adquirido por el usuario, a éste le queda terminantemente prohibido comercializar copias del mismo. Y si llega a hacerlo, estará sujeto a las sanciones de ley. Protegido con Copyleft: A este ítem pertenece los Software a los cuales se le establece unas limitantes en su distribución la cual restringe el software al momento de comercializar el producto en su adquisición. El Software Libre a pesar de su nombre, se encuentra protegido con licencias, y más específicamente, con licencias de Copyleft, que establece algunas restricciones en su distribución. Esto es necesario ya que evita una comercialización indiscriminada y tal vez irresponsable, lo que puede someter a algunos usuarios a riesgos imprevisibles, debido a que no tienen un dominio directo de las modificaciones a las que puede estar sujeto dicho Software. De la misma manera se le garantiza al mercado que algún usuario inescrupuloso pueda incorporar una restricción que limitaría dicha libertad 4)- De acuerdo a su legalidad: La legalidad es una garantía que encuentra el usuario en el mercado del Software libre, garantía que le entrega seguridad al usuario al implementar este tipo de Software en su sistema o en sus aplicaciones. De acuerdo a este precepto se divide en: Legal: Es el Software que en medio de su circulación no encontraría ordenamiento jurídico alguno, es decir que con ello no viola ninguna norma relacionada con este tipo de mercado; como consecuencia de ello al ser adquirido por el usuario éste queda facultado para adaptarlo, modificarlo, o potencializarlo con el objeto de que le preste el máximo beneficio; sólo con la salvedad de no adicionar restricción alguna al momento de transferirlo a otro consumidor.
10
Ilegal: Este es el tipo de Software que mediante su circulación va en contravía de las normas, donde el usuario abusa mediante maniobras ilegales de su aplicación al adquirirlo para un uso específico, como instalarlo en varios equipos incumpliendo los derechos del autor, evadiendo de esta manera las licencias que le corresponden a cada equipo, utilizando medios como cracks, patchs, entre otros. El Software protegido con copyleft se encuentra ubicado generalmente en el campo de la legalidad, porque se tiene la posibilidad de adaptarlo y modificarlo. A pesar de ello no incumple norma alguna; ya que solo se debe tener presente que al momento de hacer cualquier tipo de transferencia no se puede hacer restricción alguna. 4.2. HARDWARE El Hardware sufre unos cambios notables durante el transcurso del tiempo como se puede apreciar en la figura 2.
Figura 2 Historia de los Equipos informáticos. 10 [6]
10
M. A. Alvarez, «desarrollo web,» http://www.desarrolloweb.com/
11
En la década de los 70s, los muy prometedores CEOs11 de grandes compañías del Hardware y Software, se reunían en cocheras, donde compartían sus bosquejos electrónicos de equipos informáticos sin ningún tipo de restricción. Los participantes de tal evento tenían libre acceso, a planos, bosquejos y PCBs de construcción de los dispositivos. Más tarde, en la década de los años 90, nace en la página Web de Reinoud Lamberts, Open Design Circuits, quien fue pionero en propender por la instauración de una colectividad de diseñadores del Hardware con el ideal de un Software libre. Su propósito en hipótesis, era una FPGAs12 que concedía una especie de permuta de diseños libres electrónicamente, de la misma manera en que se permitía el intercambio de programas. Lastimosamente la realidad fue otra, esta colectividad surgida en los contornos de esta área, jamás adicionó diseños libres como consecuencia de la escasez del Software libre para el boceto electrónico. A pesar que se discutió intensamente sobre la utilización del Software libre o el freeware comercial, arrojando como resultado final la no creación de ningún diseño efectivo. En este debate que implicaba un buen conglomerado, donde algunos de los participantes se encontraban involucrados en otras compañías libres del diseño del Hardware, donde se presentaron sobre la mesa qué era lo adecuado y qué no, haciendo referencia al Hardware. Con el sitio web OPEN SOURCE HADWARE ASSOCIATION, se desarrolló una plataforma para los participantes de la comunidad de hardware libre. 4.2.1. Hardware Libre Para la gran mayoría es extraño el término en inglés "Hardware", referido al término general que se utiliza para describir los componentes físicos de una tecnología. En este sentido, el Hardware puede ser equipo militar importante, electrónico o equipo informático. El Hardware se refiere a lo que es tangible (que se puede tocar). Es decir todos los elementos materiales que componen una pieza determinada. Al no existir lineamientos que definan de forma exacta lo que es un Hardware libre se generan ambientes de confusión. Para lograr establecer qué es en sí un Hardware libre, es aceptable para el usuario sus modos de aplicación porque lo puede llegar a utilizar en forma libre, es así que puede llegar a compartir entre sus pares bosquejos del mismo para formar esquemas específicos, como lo afirma13 [4] quien dice que el concepto de Software libre se puede emplear en los archivos fundamentales de especificaciones técnicas y diseños esquemáticos, dejando en claro que no se comparte el circuito físico como tal.
11
CEOs: Son ejecutivos. FPGAs (Field Programmable Gate Array 13 R. M. Stallman, Software libre para una sociedad libre 12
12
Los diseños de Hardware libre (Open Source Hardware), son totalmente libres si: Lo tangible del Hardware se ha compartido públicamente con todas sus especificaciones, se clasifica como Open Source Hardware ya que se puede disponer libremente de éste. Se publican los diseños del Hardware de tal forma que otros usuarios tengan la posibilidad de estudiarlo, analizarlo, implementarlo, incluso aprender de él y pensar en posibles modificaciones para mejorarlo. Las herramientas “Software” con las que se realiza el diseño son libres, de tal manera que se puedan modificar sus características y optimizar los diseños según la aplicación que le quiere dar el usuario. A medida que transcurre el crecimiento del Software libre a la par, ha aparecido el término de Hardware libre, vinculándose a la cultura libre. Ambos corresponden a las partes que conforman un sistema. Su fin es la creación de diseños de aparatos informáticos de forma libres, de manera que todas las personas puedan acceder a los planos de construcción de los dispositivos. La idea de proyecto de Hardware de tecnologías libres es el diseño que permite utilizar una aplicación de Software libre y tecnologías libres para maximizar la habilidad para verlo y editarlo. Aunque la información se encuentra en tecnologías libres, los diseños de Hardware por lo general son realizados y guardados bajo Software privado. Es de vital importancia compartir la información original en cuanto a los diseños, ya que estos componen el código fuente de la parte física del desarrollo que se esté realizando. Por medio de esta información, los usuarios pueden contribuir en las aportaciones para cambios y mejoras, en el diseño planteado.14 [7] Estos diseños deben ser fáciles de entender para alguien más: Ordenados de forma lógica, presentando los aspectos complejos con procedimientos de producción inusuales. La documentación del Hardware deberá especificar claramente qué parte del diseño requiere la licencia para el cumplimiento de sus funciones, estar adecuadamente estructurada, con el objeto de que pueda cumplir con los requerimientos esenciales. Para el cumplimiento de dicha licencia se requieren de algunas condiciones: a) La interfaz debe estar bien documentada y contener la información necesaria para considerar la creación de un paquete informático del código libre del dispositivo, cuyo fin cumplir sus funciones básicas. Por ejemplo, esto podría incluir diagramas de tiempo detallados para señales o pseudocódigo que claramente ilustre la interfaz operando15. [7] 14
O. S. H. ASSOCIATION, «OPEN SOURCE HARDWARED ASSOCIATION,» 11 02 2014. [En línea]. Available: http://www.oshwa.org/definition/. 15 O. S. H. ASSOCIATION, «OPEN SOURCE HARDWARED ASSOCIATION.
13
b) Que el paquete informático necesario venga liberado bajo una licencia de código libre aprobada por la OSI16. [7] Los prototipos cumplen con un licenciamiento que permiten modificaciones, obras derivadas, aprobando que éstas se distribuyan bajo los mismos términos que la licencia de la obra original. La licencia reconocerá la fabricación, venta, distribución y uso de productos creados a partir de archivos de diseños anteriores. En el mercado no se pueden establecer ningún tipo de restricción cuando un empresario se lanza al mismo con un proyecto bien soportado o documentado. Este tipo de transacción no puede ser restringida por motivos de licencia para la venta, y como consecuencia de ello no se puede exigir derechos de autor por dicha venta de proyectos derivados. Cualquier persona puede hacer uso de un trabajo desarrollado bajo tecnología libre (incluyendo el objeto manufacturado) en un campo específico de aplicación. No puede restringir el uso de Hardware en un determinado negocio, o en investigación científica. Los derechos proporcionados por la licencia deberán ser aplicados a todos aquellos a los que sea redistribuido el trabajo sin la necesidad de ejecutar una licencia adicional. Los derechos proporcionados por la licencia no dependen de que el trabajo licenciado sea parte de un producto determinado. Si una parte de Hardware licenciada se usa y se distribuye bajo los términos de la licencia, todos aquellos a los que se les redistribuya la obra deberán tener los mismos derechos de la obra original. La licencia no asegura que todo el Hardware vendido con el objeto licenciado sea de “Open Source”, ni que sólo pueda utilizarse Software de “Open Source” para controlar el dispositivo. Esta debe ser neutra y no depender de una tecnología específica, componente, material o estilo de interfaz de uso de la misma. En el contexto de tecnologías libres se resalta el uso de los códigos libres como una forma de compartir información, promoviendo y apoyando todas las formas de apertura y colaboración.
16
O. S. H. ASSOCIATION, « http://www.oshwa.org/definition/.
14
Figura 3 FORM1 Impresora 3D17. [8]
En la figura 3 se recopila lo que es Hardware y Software libre, FORM1, la impresora 3D que fue desarrollada bajo el nombre de proyecto Formlab, por estudiantes del MIT (Massachusetts Institute of Technology). Su objetivo era imprimir figuras en tres dimensiones según un diseño establecido en un Software CAD.18 [9] También se tiene el DARwIn-OP19, como se puede apreciar en la figura 4, es un prototipo robótico creado a manera de plataforma para el desarrollo de robots con Hardware y Software libre. DARwIn-OP dispone de sensores y servomotores “reciclables” en modelos mucho más sofisticados. Es un equipo que permite ser personalizable tanto a nivel de Hardware como de Software. [9]20
Figura 4 DARwIn-OP.21 [10]
17
M. Formlabs Cambridge, «KICKSTARTER,» Formlabs Cambridge, MA, 26 10 2012. Centro de Investigación y Desarrollo Tecnológico de la Industria Electro Electrónica e Informática CIDEI, Copyright © 2013. 19 DARwIn-OP (Dynamic Anthropomorphic Robot with Intelligence –Open Platform) 20 CIDEI, Copyright © 2013. http://cidei.net/hardware-libre-una-oportunidad-de-crecimiento empresarial 21 PLASTICPALS, «plasticpals,» plasticpals, 11 2010. 18
15
4.2.2. Clasificación del Hardware Libre Al hablar de Hardware libres o libre hay que especificar de qué tipo de Hardware se está mencionando, teniendo en cuenta cómo es su naturaleza (estático y reconfigurable). A continuación se detallarán cada uno de los diferentes Hardware según su naturaleza: Hardware Estático Hardware estático es el conjunto de elementos materiales de un sistema electrónico no reconfigurable. Este tipo de Hardware se identifica por ser realmente notable, es decir se puede acceder al circuito. Hoy en día es inusual que este tipo de Hardware se caracterice por estar limitado por su propia existencia física. No es fácil realizar duplicados y comercializar “libremente” aplicaciones de hardware libre, pero se pueden distribuir los planos necesarios para su fabricación, sus esquemas PCB (Printed Circuit Board), siendo suficiente para realizar una copia del mismo con modificaciones y posibles mejoras. No se pueden aplicar directamente las libertades del Software libre mencionadas anteriormente, al Hardware dada su diferente naturaleza. Ya que el hardware tiene existencia física, el software no. Aparecen una serie de problemas 1) El diseño físico es único al construir la placa de circuito. Para que otra persona la pueda fabricar tiene que ser idéntica a la original. 2) La fabricación acarrea un costo. La persona que quiera manipular el Hardware que se ha diseñado, primero tiene que elaborarlo, para lo cual tendrá que comprar los componentes necesarios, construir el diseñó y rectificar que se ha hecho correctamente. Todo esto es un costo extra. 3) Depende de la disponibilidad de los dispositivos si se encuentran en el mercado, al momento de fabricarlo se puede encontrar con el problema de la falta de materiales; esto se puede presentar según el país en donde se está fabricando el Hardware. Hardware Reconfigurable El Hardware reconfigurable es explicado mediante un lenguaje HDL (Hardware Description Language) y un sistema base reconfigurable FPGA (Field Programmable Gate Array) que inicio en 1997 por Microbótica. El enfoque principal es documentar las interconexiones y el comportamiento de un circuito electrónico, sin utilizar diagramas esquemáticos22. [11]
22
J. G. F. G.-A. Ivan González, «Hardware libre: clasicación y desarrollo de hardware recongurable en entornos GNU/Linux,»
16
El ciclo de diseño suele ser común: a. Concretar cuáles son las tareas que tiene que hacer el circuito. b. Escribir el programa usando un lenguaje HDL. También existen programas de captura de esquemas que pueden hacer esto, pero no son útiles para diseños complicados. c. Realizar una prueba de la sintaxis y simulación del programa. d. Programación del dispositivo y comprobación del funcionamiento. En la libertad del Hardware, una vez hecho el diseño se puede usar en otros diseños más complejos y/o con otros dispositivos que sean compatibles. El Hardware libre reconfigurable debe cumplir: a) Ofrecer las 4 mismas libertades del Software libre a los ficheros en HDL. Por ejemplo distribución bajo licencia GPL. b) Aparecer en comunidades Hardware que comparten información, como OpenCores y OpenCollector. c) Tener depósito o archivo en un sitio centralizado donde se almacena y mantiene información del Hardware, lo que permite que muchas personas puedan participar en el desarrollo. El intercambio de Hardware Libre trae algunas implicaciones: Promover las relaciones de (archivos originales de diseño) Hardware en el mismo producto, su empaquetado o la documentación. Facilitar el acceso a las tecnologías (archivos originales de diseño) desde el sitio Web del producto. Etiquetar el Hardware con un número de versión o fecha de distribución para que la gente pueda identificar el objeto físico con su correspondiente versión en los archivos de diseño. Utilizar el logo de Open Hardware. Hazlo en una forma que sea claro a qué partes aplica el logo. Indicar claramente qué piezas de un producto son de tecnologías libres y cuáles no. Disponer de Hardware de Tecnologías Libres permite: Mantener las marcas comerciales de otros. Promover cambios innovadores de una pieza de Hardware en vez de conformarse con la venta de la copia. Compartir los cambios y mejoras realizadas con el diseñador del Hardware original. 17
5. LICENCIA
En la aplicación de Software y Hardware libre existe una norma que estandariza su implementación, mediante licencias. Las licencias son un contrato, que permiten al desarrollador de un Software recibir de otra persona el derecho de uso, de distribución, y de estudio. El desarrollador realiza un pacto del uso de esta norma, puede dar ciertas libertades al usuario o no, dependiendo de qué licencia elija según la necesidad del desarrollador como se puede observar a continuación en la figura.23 [12].
Figura 5 Cuadro de clasificación de Software libre.24 [13]
Desde el punto de vista del Software libre, existen distintos grupos de licencias como:
Tabla 1 Licencias más usadas en un promedio de 70.364 proyectos.25 [14]
23
O. S. initiative, «Open Source initiative,» 12 02 2014. [En línea]. Available: http://opensource.org GNU, «GNU,» www.gnu.org, Copyright © 1996 -2010 Free Software Foundation 25 SourceForge, «Tipos de Licencias,» SourceForge, p. 05, 14 09 2005. 24
18
Las licencias de Software libre, de las más utilizadas es la Licencia Pública General GNU (GPL), esta licencia fue creada por la Free Software Foundation en 1989 (la primera versión26 [15]). El autor conserva los derechos de autor (copyright). Las licencias Creative Commons dan una menor libertad al usuario, se ve reflejado en el derecho de (copyright). En la figura 6 se muestra la clasificación de estas licencias, todas las licencias libres deben depender de las cuatro libertades mencionadas anteriormente. 5.1. Tipos de Licencias El Software y Hardware libre se rigen bajo diferentes tipos de licencias tal como se presenta a continuación:
BSD: Es una licenciada BSD (Berkeley Software Distribution) el autor, conserva la protección de copyright únicamente para la renuncia de garantía, solicitando la adecuada autoridad de la autoría en trabajos derivados, permitiendo la libre redistribución e innovación, incluso si los trabajos tienen dueño. Admite que otras versiones pueden tener otros tipos de licencias, tanto propietarias, como BSD o GPL.27 [15] GPL: Esta licencia garantiza la libertad de compartir y modificar todas las versiones de un programa, asegurando que esta permanecerá como libre para todos sus usuarios. MPL: Las licencias MPL (Mozilla Public License) posee características parecidas a las de BSD; reconoce la aplicación de dobles al código fuente y a los ejecutables, precisando el retorno al autor de las tecnologías transformadas y permitiendo el licenciamiento de los binarios como propietarios. MIT: Esta licencia fue creada por el (MIT, Massachusetts Institute of Technology) Instituto Tecnológico de Massachusetts en el año de 1980 y por ello es una de las más confiables por su tiempo en el mercado. Apache: Este tipo de licencia libre permite al programador no privatizar el código modificado, permaneciendo con los derechos del código que ha añadido para mejorarlo.
Figura 6 Creative commons. [16]
26 27
S.O.GNU, «Sistema operativo GNU,» 23 12 2013. S.O.GNU, «Sistema operativo GNU,» https://www.gnu.org/licenses/licenses.es.html
19
6. RELEVANCIA DEL PENSAMIENTO LIBRE
6.1. Dependencia de tecnologías extranjeras y sus componentes En el Software libre se tiene aún dependencias de los distribuidores y desarrolladores de los mismos. Hoy en día se encuentran muchos obstáculos para realizar una actualización u modificación de programación. Es prácticamente obligatorio contactar al proveedor, creando unos sobre costos cada vez que se requiera una modificación. Mas si el Software fuera libre, esto le permitiría al usuario tener acceso a los códigos necesarios para realizar las modificaciones necesarias que se acomoden a sus necesidades. El Hardware se ubica en una posición donde los equipos dependen de tecnologías extranjeras, lo que genera indudablemente sobrecostos en transporte y tiempos de no ejecución de los equipos. Adicionalmente durante el proceso de actualización la mayoría de equipos no permite la homologación de piezas por cuestiones de diseño y especificaciones a las que está atada la máquina. Con el ideal de un pensamiento libre, sería posible manipular los diseños, planos y esquemas, permitiendo emplear a conveniencia las piezas, las cuales se pueden adquirir en el mercado nacional con mayor facilidad, adecuadas a las necesidades pertinentes. De este modo se reducirían los gastos en la compra de equipos y de transporte. 6.2. Libertad de comercialización y rentabilidad Los Software que se encuentran actualmente interactúan en los procesos de producción de insumos. Estos son restringidos a un determinado Hardware por compatibilidad. El costo que se cobra a los usuarios por acceder a estos productos es una barrera de desarrollo económico, ya que al usuario no solo se le cobra por obtenerlo, sino por actualizaciones necesarias para estar a la vanguardia con las nuevas tecnologías. La economía de un país depende de la competitividad de sus empresas y de las cadenas productivas que ellas conforman; las empresas dependen de sus capacidades de producción siendo necesaria una mejor efectividad de los equipos que lo integran.28 [17]
28
M. tech, «moishtech,» 01 06 2012. http://moishtech.blogspot.co.uk/2012/06/setup-and-run-asterisk-andfreebpx-on.html.
20
Con la aplicación de Software libre a nivel empresarial se logran disminuir costos ya que no es necesario realizar un pago en la instalación para múltiples equipos, quien adquiere este producto tiene libertad de Software con las especificaciones del Hardware. De esta manera, su costo es menor al extenderse el número de proveedores de Hardware y no está monopolizado por una marca. 6.3. Las empresas restringen la libertad de conocimiento Las empresas observan que sus activos físicos y financiaros no tienen las suficientes capacidades para fomentar las competitividades necesarias para prosperar, y revelan que aquellos activos intangibles poseen una mayor relevancia. El conocimiento es el activo que genera mayor valor, implicando un nivel superior de toma de decisiones, lo cual se ve reflejado en los indicadores de operación. La privatización de hardware y software limitan los desarrollos empresariales, teniendo en cuenta que la globalización y la universalización en diferentes ámbitos influyen en el desarrollo de nuevas tecnologías el Hardware y Software libre brindarían la oportunidad de participar en la creación de nuevas empresas fomentando la creación de nuevos empleos, recurriendo a un enfoque en el desarrollo de la cultura libre. 6.4. Diseño redundantes En la actualidad se evidencian diversos diseños de Software y Hardware que se asemejan mucho, y por la falta de información se repiten los mismos errores de fabricación a causa de no compartir especificaciones de diseño. Es necesario cambiar ese pensamiento de restricción en cuanto al manejo de la información de un diseño o código fuente, generando la innovación o creación de un nuevo producto en menor tiempo. Por los motivos antes mencionados del uso del Hardware y Software libre, se busca la optimización de las empresas, con el objeto de contribuir con el desarrollo del país, aumentar la competitividad exigida en el mercado, mejorar la elaboración de nuevos diseños innovadores, y finalmente se reducir el tiempo de desarrollo de nuevos productos. 6.5. Panorama nacional Colombia no es ajeno al progreso del ideal Software libre, durante la década del 90 tuvo un apogeo de este movimiento, el entorno tecnológico y social de la información cambio para acceder a las tecnologías que hoy se disponen a la mano, en el sector público, patrocinó la implementación de herramientas de Software libre en la educación e investigación científica. 21
Facilitando la tendencia del Software y Hardware libre en Colombia, hay varias instituciones que han apoyado esta iniciativa, como: La Universidad Nacional de Colombia, la Pontificia Universidad Javeriana, la Universidad de los Andes, la Universidad de Antioquia, la Universidad Industrial de Santander y muchas más; en donde la inclinación del manejo de Hardware y Software libre ha tenido un desarrollo real y aceptación por las mismas. El sector privado y público han expresado el incremento de su competitividad por el beneficio significativo del uso de free Software con respecto al privado, instituciones como La Cámara de Comercio de Bogotá, la Bolsa de Colombia, el Banco Popular, Orbitel, el Parque Tecnológico del Software, Maloka han implementado el uso de Open Source y Open Hardware para la conexión de sus equipos a la red, infraestructura de seguridad informática y control de gestión de redes.29 [18] Entre el 2002 y el 2003 se evidenciaron progresos significativos en el congreso de la república, oportunidad de otorgar una legislación que regule y establezca de manera absoluta las políticas de uso y empleo del Software libre en los sistemas de información a las entidades gubernamentales y en las empresas que tenga un mayor poder accionario.30 [18] En cuanto a los aspectos jurídicos para la regulación del uso de Hardware y Software libre se presentan leyes como: Ley 11.723: Es una ley compuesta por 89 artículos penada en 1933 (y todavía vigente), conocida como "Ley de Propiedad Intelectual” también "Ley de Propiedad Científica, Literaria y Artística". Esta ley regula todo lo referente a derecho de propiedad de una obra artística, científica o literaria, derechos de autor, enajenación o cesión de una obra, licencias, etc. Además, establece sanciones tanto pecuniarias (multa) como privativas de la libertad (prisión) a quienes violen sus normas. Su última reforma data de Noviembre de 1998, cuando por Ley 25.036 se le introdujeron 6 artículos refiriéndose al Software, para darle fin a las discusiones doctrinarias y jurisprudenciales sobre la cuestión de si el Software estaba o no bajo el amparo de esta ley. Ahora establece expresamente en su Artículo 1° que "... las obras científicas, literarias y artísticas comprenden los escritos de toda naturaleza y extensión, entre ellos los programas de computación fuente y objeto; las compilaciones de datos o de otros materiales..." y en su art. 55° bis que "La explotación de la propiedad intelectual sobre los programas de computación incluirá entre otras formas los contratos de licencia para su uso o reproducción".31 [19]
29
W. R. R. Ruiz, «Aspectos legales del software libre o de còdigo abierto (OPEN SOURCE),» 15 09 2004. W. R. R. Ruiz, , «Aspectos legales del software libre o de còdigo abierto (OPEN SOURCE). 31 G. L. Serpa, «Centro Colombiano del derecho de autor,» 11 02 2012. [En línea]. Available: http://www.cecolda.org.co/index.php/informacion/noticias/64-mas-contra-cuevana. 30
22
7. PROPUESTA INNOVADORA
Al remplazar los métodos estándar de sistemas embebidos por métodos basados en código libres se pueden obtener los mismos resultados en las etapas fundamentales de cualquier proceso, como son las comunicaciones y la adquisición de datos. Como se observa hay una gran variedad de soluciones, además con mayor capacidad de simplificar las operaciones efectuadas en dichas fases, disminuyendo a su vez la carga en los dispositivos empleados. En el desarrollo mencionado se deben analizar las diferentes opciones libres disponibles, para implementar con su respectivo licenciamiento. Con el boom de las plataformas móviles es de vital importancia teniendo en cuenta la compatibilidad de la información, como equipos portátiles, teléfonos celulares, tablets y computadores de escritorio. La solución más eficiente para evadir cualquier problema de compatibilidad, es trasladar la transcripción y codificación de la información a una sola etapa, es decir, implementar un servidor centralizado que adquiera los datos y los envíe a los receptores. Los datos al final deben salir en un lenguaje fácilmente interpretable por un entorno común, sin importar el sistema operativo o plataforma de operación. Como es el caso de las licencias Apache, que son muy útiles a la hora de programar un servidor, por su lenguaje de fácil reconocimiento para el usuario o cliente, tiene un rendimiento excelente, y un bajo consumo de recursos depende, comparado con la cantidad de usuarios que puedan acceder a ella. 7.1. Lenguaje PHP (Hypertext Preprocessor) Es un lenguaje interpretado de alto nivel embebido en páginas HTML 32 y ejecutado en el servidor PHP permite embeber sus pequeños fragmentos de código dentro de la página HTML y realizar determinadas acciones de una forma fácil y eficaz, combinando lo que ya se conoce del desarrollo en HTML, es decir, con PHP se escriben scripts dentro del código HTML. Por otra parte, y es aquí donde reside su mayor interés con respecto a los lenguajes pensados para los CGI 33, PHP ofrece un sinfín de funciones para la explotación de bases de datos de una manera sencilla y sin complicaciones.
32 33
HTML: HyperText Markup Language «lenguaje de marcas de hipertexto» CGI: Common Gateway Interface
23
7.1.1. Comunicación con PHP El lenguaje PHP posee métodos de tratamiento de información tan poderosos, que compite con el prestigioso .NET de Microsoft, el cual no tiene costos en su adquisición, desarrollo y ejecución, además al no distinguir el tipo de variables ingresadas, permite un tratamiento generalizado de los datos, evitando el problema de incompatibilidad de objetos. Con un lenguaje PHP, es necesario conocer el protocolo de comunicación máquinacontrolador, para recibir la información requerida. Si es vía TCP/IP basta con configurar el direccionamiento adecuado. Sin embargo si se trata de RS-232, es necesario implementar a nivel del servidor, un serializador de instrucciones, el cual también es ofrecido por varias licencias libres. Cuando estén correctamente vinculados, el desarrollo de las vistas es lo más sencillo, pues PHP traduce de manera automática cualquier dato recibido, y envía a los usuarios con acceso al servidor instrucciones en lenguaje estándar y normal HTML, interpretable por medio de cualquier dispositivo. De acuerdo a lo anterior, en un área de trabajo común solo se necesita una red LAN34, sean conexiones físicas o inalámbricas para acceder al servidor por medio de una conexión directa por direccionamiento IP sea v4 o v6. Si se requiere monitorear la operación sin importar la ubicación de un dispositivo, es necesario configurar una red de comunicaciones VPN35 para garantizar el acceso desde cualquier punto geográfico, sin comprometer la confidencialidad de la información transmitida, ni depender de ningún sistema operativo. 7.2. Descripción de la idea innovadora. En el campo de licenciamientos libres hay muchas plataformas desarrolladas muy versátiles con tareas sencillas, esta arduino debido a su sencillez y bajo costo, además de la posibilidad de ejecución en múltiples diseños. Por otro lado el software del mismo, consiste en un entorno de desarrollo que implementa el lenguaje de programación Processing/Wiring, basado principalmente, en instrucciones java, lo cual permite el uso de numerosas librerías y métodos, sin depender del protocolo de comunicación de la plataforma. Una vez configurado el controlador para enviar todas las señales a los actuadores, se debe implementar un equipo de comunicaciones y adquisición de datos, para las empresas con sede y equipos fijos, lo ideal es un servidor con acceso a internet y a la red LAN, para enviar datos a nivel interno y externo, sin mayores problemas de conectividad.
34 35
LAN: Local Area Network VPN: Virtual Private Network
24
En el equipo de comunicaciones externas de la empresa (puede ser un servidor, un computador, una laptop, entre otros) se puede instalar un servidor apache o que el usuario adquiera un servidor propio, posteriormente se necesita establecer el destino de los servicios ofrecidos. Por ejemplo: Un control remoto con pocos usuarios (empleados de la empresa con acceso administrativo) y un acceso a una base de datos correspondiente al número de actuadores a controlar. Para ello no es necesario montar un programa complejo. Es de anotar, que partiendo desde el principio lo más recomendable para escoger un equipo de comunicaciones, es seleccionar una plataforma libre como Raspberry PI o sus equivalentes, con un disco duro de más de 1GB de capacidad y memoria RAM de 2GB, puerto Ethernet habilitado, corriendo bajo un sistema operativo Debian (Linux). Éste equipo no debe tener problemas en la ejecución de apache, mysql, processing, ni con los elementos de software necesarios. Si el control se hace por fuera de la empresa, es necesario, además implementar una VPN privada para el equipo, y para los usuarios remotos de la aplicación, en este caso programas como Hamachi de LogMeIn resultan muy útiles y el reciente desarrollo bajo plataformas móviles, viene a brindar exactamente la conectividad necesaria. Una vez terminadas las fases de actuadores, control y comunicaciones, se debe ensamblar todo el sistema. Al conectar el Arduino con el servidor mediante puerto Serial, por medio de un cable USB tipo B, si en el servidor no existen los drivers, es necesario dirigirse a la página web arduino.cc, y descargar la última versión estable de los mismos, la página guía al usuario según la plataforma de operación. Una vez se reconozca correctamente el dispositivo, se ejecuta Processing y se parametriza con la velocidad de transmisión de arduino, cuando están correctamente sincronizados ambos equipos, se procede a programar el script en sí. Lo más sencillo para lograr la interacción entre una visualización web y el puerto serial, es segmentar el proceso para escribir las órdenes del usuario en un archivo de sistema, Processing lo lee y serializa las instrucciones. El procedimiento para escribir un archivo de sistema, consiste en implementar un script en PHP que muestre al usuario, una interfaz sencilla en donde se encuentra la lista de actuadores y la acción a realizar, a través de un vínculo a un método interno del servidor, el usuario pulsa dicho enlace se ejecuta una función de apertura y modificación del fichero en donde se encuentra el estado de todos los elementos del sistema y edita el dato de la variable, dejando el resto de la información intacta. Con el estado de las variables, concreto en una ubicación del disco duro, el entorno Processing abre el archivo, lee el contenido constantemente, y a través de su puerto serial envía una palabra codificada a Arduino u otro sistema de adquisición, con una latencia de actualización de 1000 ms. Inmediatamente Arduino recibe la palabra, la decodifica y altera el estado de sus salidas para responder a las órdenes de usuario (Es necesario en la programación interna del controlador especificar la parametrización de los pines, y la traducción 25
de lo recibido por el puerto serial a través del IDE36 proporcionado por el desarrollador. Una vez la salida cambia, el método de acción de los equipos eléctricos también lo hace, apagando o encendiendo los actuadores de la empresa. Por otro lado, el funcionamiento de la visualización del cliente comienza en el momento que éste ingresa a la dirección donde se encuentra el script (con un servicio Apache estándar es suficiente introducir la IP privada del servidor en la LAN o VPN seguido de una barra inclinada, y el nombre de la clase .php), en el dispositivo carga la visualización ofrecida por PHP. Al modificar el estado de la variable en un listado, haciendo invisible para él, cualquier proceso interno llevado a cabo. Aunque ésta tecnología está diseñada para ser ejecutada a nivel público, si se desea subirla a Ethernet se recomienda el uso de contraseñas de seguridad, pues el control podría ser accesible por personas ajenas a la organización. Si una organización implementa desde el primer momento sistemas basados en tecnologías libres para optimizar los procesos realizados, en poco tiempo se evidenciará el impacto del uso de estas tecnologías, con poco consumo de recursos, y con procesos diseñados a la medida; colocándose en una posición privilegiada frente a competidores con características similares e incluso mayores. Cambiando los modelos de negocios, vinculándose a la cultura de conocimientos libres. 7.3. Pasos para implementar la propuesta
Figura 7 Pasos de la propuesta innovadora.
La idea consiste en implementar tecnologías libres en todo el proceso con el fin de obtener un dato preciso, el primer paso es adquirir la señal procedente de los sensores. Cuando el sensor envía la señal al controlador del proceso está es codificada y para su interpretación se analizan los resultados mediante algoritmos desarrollados bajo plataformas libres, por lo tanto en ese análisis no es requerido un tipo de tecnología especifica. 36
IDE: integrated development environment.
26
En plataformas de adquisición de datos como PLC la información se codifica dependiendo de la velocidad de obtención y transmisión, el segundo paso consiste en que el código de arduino analice los datos en el caso de un sensor análogo y compare con un valor de referencia, si este valor supera el rango establecido el controlador debe ser capaz de alterar el estado de los actuadores para estabilizarse, sin embargo es necesario enviar dicha modificación a través de un protocolo de comunicación para garantizar en tiempo real la información obtenida. Una vez realizadas las operaciones correspondientes, en el tercer paso el controlador asigna un dato numérico el cual debe enviar a través de los protocolos de comunicación disponibles, en este punto es necesario tener en cuenta los recursos de hardware para realizar dicho proceso. En el caso de arduino mega 8620 no se pueden enviar los datos directamente por red LAN mediante IP, como consecuencia de no poseer una tarjeta de comunicaciones TCP/IP, siendo necesario inicializar las librerías de comunicación serial para realizar un envío de la información por el puerto USB tipo B integrado en el dispositivo.(Anexo 1) Una vez enviada la información por un protocolo comercial, se procede al realizar el siguiente paso, la información es escrita en un archivo debidamente encriptado (.dat) y es guardada en el servidor en un archivo local donde se protege de una conexión no deseada y a la vez se garantiza la lectura por parte de cualquier usuario con los permisos correspondientes. En el quinto paso, processing recibe la información enviada por el puerto serial y la escribe en el archivo bajo los protocolos de encriptación establecidos, cuando el fichero se termina de escribir se guarda en el servidor y se cierra para ser leído instantáneamente por otra interfaz.(Anexo 2) En el sexto paso el archivo físico del servidor, puede ser leído por un usuario con acceso si dispone de la llave de encriptación, un código PHP37 con su librería fopen lee el archivo y retorna un vector con el valor de cada línea del archivo físico una vez decodificada, es posible transcribirla a cualquier interfaz. Por último, si la interfaz elegida para la visualización es un navegador de cualquier sistema operativo la información se traduce a lenguaje HTML38, y es mostrada al usuario en un lenguaje común y de fácil interpretación. En una empresa sin los fondos suficientes para adquirir equipos propios, solo es necesario un computador (incluso hasta equipos de procesamiento ARM39) para implementar un servidor Apache ágil y capaz de suministrar información a los miembros de la organización con buenos tiempos de respuesta a todos los niveles de plataforma.
37
PHP : Más información sobre PHP en http://www.phpya.com.ar/ HTML: Más información sobre HTML en http://www.htmlya.com.ar/ 39 ARM es una arquitectura RISC (Reduced Instruction Set Computer=Ordenador con Conjunto Reducido de Instrucciones) de 32 bits desarrollada por ARM Holdings. 38
27
8. PROYECTOS NOTABLES
Como se menciona en la propuesta anterior, hay diversos tipos de Hardware libre que se rigen por las especificaciones que el cliente necesita para llevar a cabo un proceso, entre los cuales se puede mencionar: Raspberry Pi: es un procesador del tamaño de una tarjeta de crédito de bajo costo que se desarrolló en Reino Unido en 2006 por la Fundación Raspberry Pi, posee puertos de HDMI, USB, SD, conexión LAN, salida de audio, un procesador ARM11 con tarjeta 512 RAM. Permitiendo la conexión de este miniordenador a diferentes dispositivos, teclados, pantallas táctiles, entre otros. Entro al mercado en 2012 con el objetivo de fomentar la educación de modelamientos matemático y computacional: que permita especificar, pronosticar, simular y confirmar propiedades de los sistemas de cómputo, abriendo la puerta a la creación de Hardware y Software derivados del transcurso de la investigación con este tipo de Hardware. Por ejemplo: Tu propio sistema telefónico40 [20] Un emulador PC-XT compatible virtual gratuito escrito en C.41 [21]
Figura 8 Tablet (PiPad) por Michael Castor basado en Linux.42 [22]
40
m. tech, «moishtech,» http://moishtech.blogspot.co.uk/ Raspberrypi, «Raspberrypi,» http://www.raspberrypi.es/wp/8086tiny-un-emulador-pc-xt-compatible-ygratuito-escrito-en-c/. 42 Raspberrypi, «Raspberrypi, http://www.raspberrypi.es/. 41
28
Arduino: Al ser Arduino una plataforma de Hardware libre tanto su diseño como su distribución puede utilizarse libremente para el desarrollo de cualquier tipo de proyecto sin haber adquirido ninguna licencia. Por eso existen varios tipos de placa oficiales, las creadas por la comunidad Arduino o las no oficiales creadas por terceros pero con características similares. Entre los que se encuentran: Pinokio la lámpara que interactúa con seres humanos43. [23] Desarrollar un simulador de terremotos, Quakescape 3D. [24]
Figura 9 Simulador de terremotos Quakescape 3D.44
Figura 10 Maletín seguro que se abre en coordenadas concretas.45 [25]
43
ALT1040, «ALT1040, http://alt1040.com/2012/12/pinokio-lampara. Jamesboock, «Jamesboock, http://jamesboock.com/Quakescape-3D-Fabricator 45 G. inversa, «Arduino, http://forum.arduino.cc/index.php/topic,8867.0.html. 44
29
Figura 11 Teléfonos celulares por David Melis.46 [26]
Open Compute Project: De los creadores de Facebook (Mark Zuckerberg) en el 2011 lanzan el proyecto de Open Compute Project con el pensamiento de que las empresas fueran capaces del desarrollo de servidores propios, con capacidades de almacenamientos sin la dependencia del Hardware habitual que sean óptimos y su costo de operación sea menor.
Figura 12 Open Compute Project idea de servidores propios. 47 [27]
46
E. Zamorano, «Fayerwayer,» http://www.fayerwayer.com J. VELASCO, «ALT1040,» 15 02 2013. [En línea]. Available: http://alt1040.com/2013/02/open-computeproject-facebook. 47
30
Cubieboard: Es un tarjeta de procesamiento amigable al programador de bajo presupuesto, cuenta con un procesador ARM córtex A8 de 1Gb de memoria RAM DDR3 a 480MHZ, puerto de video HDMI 1080P, conector de audio 3.5mm, conexión de red 10/100 y almacenamiento μSD, SATA (5 v potencia). Su desarrollo ha permitido la creación y mejoramientos de proyectos tales: Hadoop en Cubieboard una plataforma orientada a objetos.48 [28] Impresora 3D orientada al consumidor (también extrusoras de doble, con Ethernet y Wii-Fi, cámara a bordo, controlada por Smartphone y Tablet, cartuchos recargables exclusivos.
Figura 13 Impresora 3D orientada al consumidor.49 [29]
RepRap: Consiste en la fabricación de equipos autoreplicantes, es decir una impresora 3D desarrollada en el 2005 con el fin de imprimir piezas para otros equipos, formando un ciclo de implementación del uso del Hardware libre.
Figura 14 Impresora 3D Autoreplicable.50 [30]
48
Cubietech, «cubieboard,» de 08, 01, 2013. Zeepro, «Zeepro,» de 10, 11, 2013. 50 RepRap, RepRap, http://relativedesign.us/blog/wp-content/uploads/2012/01/pc-va.jpg, 2014. 49
31
CONCLUSIÓNES
El uso de Hardware y Software libre hacen parte del paquete de implementación de la dinámica empresarial en la aplicación de nuevas tecnologías, con el objeto de lograr un aumento en los indicadores de gestión, los cuales se ven reflejados directa y proporcionalmente en los aumentos de producción y mercadeo. Colombia se encuentra ahora mismo sumergida en las grandes propuestas de mercados libres, sin fronteras. Es decir está atrapada en la globalización económica, donde la nación que no se haga participe de éste tipo de mercadeo, será relegada, aislada, indudablemente condenada a la pobreza y a la miseria. Los principales participantes de esta globalización de mercados son los tratados de libre comercio, tratados por lo general entre países poderos y emergentes, Colombia hace parte de éstos últimos y comercializa con ellos todo tipo de productos y servicios, los empresarios participes tienen la responsabilidad de lograr apreciables incrementos en el PIB (Producto interno bruto) industrial. Se podría lograr participar competitivamente? Si, por esta razón la industria y comercio colombiano tiene la obligación de propender por una política vanguardista en la actualización, modernización de equipos y herramientas. Como consecuencia de ello, se presenta un aumento en los indicadores en la capacidad intelectual del cuerpo de tajadores dedicados a estos desarrollos empresariales. La política empresarial con respecto a la modernización, actualización de equipo y maquinaria debe ser altamente eficiente y práctica. Y como la agresividad de los mercados nacionales e internacionales es a todo ritmo, los empresarios están sujetos al desarrollo presentado a nivel mundial. He ahí, la relevancia de que los empresarios del país quieran integrarse en la implementación de estas tecnologías, deben recurrir al uso de Hardware y el Software libre. Cuál es la razón de invertir en tecnología? Muy sencillo, la razón es la dinámica de los mercados actuales, tanto nacionales como internacionales, con la implementación del Hardware y Software libre, los dinámicos empresarios de la nación, tienen que aprovechar el buen momento por el cual está pasando la economía, tienen que lograr dinamizar los ritmos de producción en sus empresas, entraran a reducir los cuadros de horas hombres que se requieren para una producción optima, eficiente y específica, es decir se reduce tanto en inversión de mano de obra, como en el número de horas que se requieren, específicamente en la utilización de operadores de equipos.
32
Se puede llegar a pensar que estas medidas entrarían a impactar el mercado laboral en una forma negativa pero no es así, ya que el comportamiento de las principales variables indican que como consecuencia de los TLC, que se han venido firmando, muchas empresas han informado que conservaran sus plantas y además intensificaran sus planes de ensanche, lo que repercute en el mercado laboral en forma positiva. Es imprescindible que los empresarios a nivel global, ejecuten una grande inversión en éste tipo de tecnologías, como lo es Hardware y Software libre, tienen que profundizar en la excelencia operacional poniéndose al día en esta tecnología, esto incita al empresario a realizar actividades de producción de mayor valor agregado, desarrollo económico y social. Igualmente que este se refleja en los indicadores financieros y a nivel de operación se optimizan los tiempos de producción. Esta idea busca que las empresas en todos sus sectores sea una fuente de crecimiento, permitiendo el desarrollo sostenible y el aumento del patrimonio. Hay muchos proyectos que han fomentado a las empresas el manejo de estas técnicas de Open Source y Open Hardware, sin embargo la mayoría de estas no son muy conocidas en el país. Programas de este tipo generalmente se encuentran en países desarrollados. Colombia no ha tomado la suficiente fuerza y dinamismo que en los países más avanzados. En la mayoría de los casos, dichos programas no suelen estar incorporados dentro de las estrategias de emprendimiento en las pymes y dentro de los programas del gobierno el interés ha sido a nivel académico, científico, e investigativo y comercial. Con este tipo de iniciativas es proyectar que los empresarios generen un crecimiento económico, un aumento en la demanda de empleo, incremento en su productividad, e innovación en los nuevos proyectos por venir, e incluso el incremento de un número significados de pymes. Con el fin de que a futuro se promueva la creación de un mayor énfasis en este tipos de políticas y programas que ayuden a las empresas a tener un crecimiento empresarial, logrando mantenerse estable en un comercio competitivo y duradero. Las ventajas de hacer parte del pensamiento de Hardware y Software libre son: Fomentar la competitividad, crear flexibilidad en los diseños para que estos puedan ser compartidos, cumplir con las normas jurídicas vigentes y proponer otras que les permita con mayor facilidad el uso de la misma y promover el mejoramiento de las empresas. Otro factor importante que se debería superar es la falta de una cultura empresarial libre, la cual se debe infundir desde la formación educativa por medio de seminarios para las empresas, y a las generaciones futuras desde la educación universitaria. El uso de Hardware y Software libre permite optimizar los métodos de los negocios, agilizar los tiempos de respuesta y fortalecer las comunicaciones con los socios
33
empresariales; para los clientes se vería reflejado como un valor agregado del producto final. La aplicación de ésta tecnología juega un papel preponderante en la optimización de los procesos de producción, la empresa que se empecine en innovar con estas ideas. Sin duda alguna tendrá ventaja competitiva en los mercados, y fijaran estándares bien altos a su competencia. Estos procesos de implementación tecnológica son fomentados inclusive por el Estado Colombiano, con el objeto de poner a los empresarios en niveles de competitividad aceptables ante los desafíos que les vienen imponiendo los tratados de libre comercio. El empresario actual debe tener trabajadores multidisciplinarios como requisito para aumentar sus niveles de competitividad, eso lo puede lograr impulsando la empresa con nuevas tecnologías que le permitan optimizar tiempos de trabajo, reducir costos, aumentar la producción y garantizar la calidad del producto o servicio. Con la implementación del Hardware y Software libre el trabajador tendría la capacidad operativa de manipular varios equipos desde cualquier punto, sin importar la posición geográfica en que se encuentre en la empresa. En los últimos años el incremento económico, el progreso del mercado colombiano, los nuevos tratados de libre comercio y la alianza del pacifico; indican que actualmente Colombia abarcará nuevos sectores en el mercado empresarial siendo necesaria la implementación de nuevas tecnologías para estar a la vanguardia. En este 2014, Colombia tiene unas perspectivas y expectativas favorables para las empresas que contemplan un incremento en sus capacidades de producción. Dentro de los estímulos para los empresarios, se evidencia, en grado de importancia, la implementación del Open Source y Open Hardware para mejorar sus finanzas, al poner en práctica los desarrollos actuales se hace una contribución a la sociedad en la creación de nuevas oportunidades empresariales. No se puede trabajar con la misma idea del pasado, si se quiere un mayor desarrollo social y económico para lograr un escenario más alentador, se deben implementar las nuevas tecnologías basadas en el uso de Software y Hardware libre. De esta manera, fomentar el desarrollo e innovación a nivel empresarial.
34
GLOSARIO
GPL (General Public License): Licencia Pública General OHSP (Open Hardware Specification Program): Es una marca registrada, una forma limitada de Hardware libre, cuyo requisito es que debe estar disponible una cantidad suficiente de documentación del dispositivo para que un programador competente pueda escribir un controlador de dispositivo. OSHWA. (Open Source Hardware Association): Es una asociación de Hardware de código libre. Mainframes: es un gran ordenador capaz de realizar el procesamiento de datos complejos. Mainframes se utilizan como sistemas centrales de las grandes organizaciones (empresas, instituciones, etc.). Mainframes se caracterizan por una alta velocidad de ejecución de tareas individuales y una arquitectura diseñada para permitir el equilibrio de beneficios y un mayor nivel de seguridad de los ordenadores de gama baja. DECUS (grupo de usuarios de computadoras DEC): Decus es una asociación independiente de usuarios de Hewlett-Packard y HP Partners. La asociación de miembros, fundada en Múnich, Alemania, forma parte de la asociación mundial de usuarios de Hewlett-Packard en Alemania y Austria. Free Software Foundation (FSF): Es una organización creada en octubre de 1985 por Richard Stallman y otros entusiastas del Software libre con el propósito de difundir este movimiento. CEOs: director ejecutivo, director gerente, ejecutivo delegado, jefe ejecutivo, presidente ejecutivo, principal oficial ejecutivo, consejero delegado y primer ejecutivo FPGAs (Field Programmable Gate Array): Es un dispositivo semiconductor que contiene bloques de lógica cuya interconexión y funcionalidad puede ser configurada mediante un lenguaje de descripción especializado. Pymes: Pequeñas y medianas empresas Serializador: es un algoritmo capaz de convertir objetos en cadenas de bits. GNU: Movimiento y comunidad de Software y Conocimiento Libres
35
BSD (Berkeley Software Distribution): Distribución de Software berkeley, es un sistema operativo derivado del sistema Unix nacido a partir de los aportes realizados a ese sistema por la Universidad de California en Berkeley. MPL (Mozilla Public License): licencia pública de Mozilla, es una licencia de código libres y de Software libre. Interfaz: es lo que conocemos en inglés como interface (“superficie de contacto”). Escalabilidad: es la propiedad deseable de un sistema, una red o un proceso, que indica su habilidad para reaccionar y adaptarse sin perder calidad, o bien manejar el crecimiento continuo de trabajo de manera fluida, o bien para estar preparado para hacerse más grande sin perder calidad en los servicios ofrecidos. PHP: Es un lenguaje de código abierto muy popular especialmente adecuado para el desarrollo web y que puede ser incrustado en HTML. MySQL: sistema de gestión de bases de datos. Script: archivó de órdenes o archivo de procesamiento por0 lotes. ARM: Es una arquitectura RISC (Reduced Instruction Set Computer Ordenador con Conjunto Reducido de Instrucciones) de 32 bits desarrollada por ARM Holdings. Es el conjunto de instrucciones de 32 bits más ampliamente utilizado como ordenadores personales. Parametrizar: Asignar valores a los parámetros declarados para modificar o influir en su comportamiento
36
REFERENCIAS
[1]
2. Hitt et al., “Strategic management”, Hitt, M.A., Ireland, D.R., Hoskinson, R.E. y Joseph, G.L.: Competitiveness and Globalisation (Concepts and Cases). Fifth edition, Cincinnati, (2003)..
[2]
« CLUB DE LEONES COLIBRÍ,» 25 02 2005. [En línea]. Available: http://1.bp.blogspot.com/oIPFOO_GFlg/TWf5TW_W9gI/AAAAAAAAAGA/kyueVXHwXkA/s1600/LINEA%2BDEL%2BTIE MPO.jpg.
[3]
E. BRITANNICA, «ENCICLOPEDIA BRITANNICA,» ©2014 Encyclopædia Britannica, Inc, 2014. [En línea]. Available: http://www.britannica.com/EBchecked/topic/163303/DigitalEquipment-Corporation-DEC. [Último acceso: 12 02 2014].
[4]
R. M. Stallman, Software libre para una sociedad libre, ISBN: 84-933555-1-8 Depósito Legal: M-44298-2004: Copyright 2004 de la Edición, Traficantes de Sueños, 2004.
[5]
Clerus, «Clerus,» 14 12 2009. [En línea]. Available: http://www.clerus.org/cleru.
[6]
M. A. Alvarez, «desarrolloweb,» 06 04 2012. [En línea]. Available: http://www.desarrolloweb.com/articulos/ejemplos/disenomoviles/dominador-decada.jpg.
[7]
O. S. H. ASSOCIATION, «OPEN SOURCE HARDWARED ASSOCIATION,» 11 02 2014. [En línea]. Available: http://www.oshwa.org/definition/.
[8]
M. Formlabs Cambridge, «KICKSTARTER,» Formlabs Cambridge, MA, 26 10 2012. [En línea]. Available: https://www.kickstarter.com/projects/formlabs/form-1-an-affordableprofessional-3d-printer. [Último acceso: 12 02 2014].
[9]
C. d. I. y. D. T. d. l. I. E. E. e. Informática, «CENTRO DE INVESTIGACIÓN Y DESARROLLO TECNOLÓGICO DE LA INDUSTRIA ELECTRO ELECTRÓNICA E INFORMÁTICA,» Centro de Investigación y Desarrollo Tecnológico de la Industria Electro Electrónica e Informática CIDEI, Copyright © 2013. [En línea]. Available: http://cidei.net/hardware-libre-una-oportunidadde-crecimiento-empresarial/. [Último acceso: 09 02 2014].
[10]
PLASTICPALS, «plasticpals,» plasticpals, 11 2010. [En línea]. Available: http://www.plasticpals.com/http://www.plasticpals.com/wpcontent/uploads//2010/11/DARwIn-OP-image001.jpg. [Último acceso: 07 02 2014].
37
[11]
J. G. F. G.-A. Ivan González, «Hardware libre: clasicación y desarrollo de hardware recongurable en entornos GNU/Linux,» Escuela Politécnica Superior, Universidad Autónoma de Madrid, 2003.
[12]
O. S. initiative, «Open Source initiative,» 12 02 2014. [En línea]. Available: http://opensource.org.
[13]
GNU, «GNU,» www.gnu.org, Copyright © 1996, 1997, 1998, 2001, 2006, 2007, 2009, 2010 Free Software Foundation, Inc. [En línea]. Available: https://www.gnu.org/philosophy/category.es.png. [Último acceso: 7 02 2014].
[14]
SourceForge, «Tipos de Licencias,» SourceForge, p. 05, 14 09 2005.
[15]
S. o. GNU, «Sistema operativo GNU,» 23 12 2013. [En línea]. Available: https://www.gnu.org/licenses/licenses.es.html.
[16]
L. Serra, «El software libre, sus licencias y las licencias privativas.,» 15 11 2011. [En línea]. Available: http://unfrikitecnologico.blogspot.com/2011/11/el-software-libre-sus-licenciasy-las.html.
[17]
Mineducacion, «Mineducacion,» 01 01 2014. [En línea]. Available: www.mineducacion.gov.co/cvn/1665/articles-95980_archivo_pdf8.pdf. [Último acceso: 10 01 2014].
[18]
W. R. R. Ruiz, «ASPECTOS LEGALES DEL SOFTWARE LIBRE O DE CÒDIGO ABIERTO (OPEN SOURCE),» 15 09 2004. [En línea].
[19]
G. L. Serpa, «Centro Colombiano del derecho de autor,» 11 02 2012. [En línea]. Available: http://www.cecolda.org.co/index.php/informacion/noticias/64-mas-contra-cuevana. [Último acceso: 08 02 2014].
[20]
m. tech, «moishtech,» 01 06 2012. [En línea]. Available: http://moishtech.blogspot.co.uk/2012/06/setup-and-run-asterisk-and-freebpx-on.html.
[21]
Raspberrypi, «Raspberrypi,» 05 02 2014. [En línea]. Available: http://www.raspberrypi.es/wp/8086tiny-un-emulador-pc-xt-compatible-y-gratuito-escritoen-c/.
[22]
Raspberrypi, «Raspberrypi,» 14 01 2014. [En línea]. Available: http://www.raspberrypi.es/.
[23]
ALT1040, «ALT1040,» 04 12 2012. http://alt1040.com/2012/12/pinokio-lampara.
[24]
Jamesboock, «Jamesboock,» 04 12 2012. http://jamesboock.com/Quakescape-3D-Fabricator.
38
[En
[En
línea].
línea].
Available:
Available:
[25]
G. inversa, «Arduino,» 30 12 2010. http://forum.arduino.cc/index.php/topic,8867.0.html.
[26]
E. Zamorano, «Fayerwayer,» 28 11 2013. [En línea]. Available: http://www.fayerwayer.com/2013/11/construye-tu-propio-celular-por-usd200-gracias-aarduino/.
[27]
J. VELASCO, «ALT1040,» 15 02 2013. [En http://alt1040.com/2013/02/open-compute-project-facebook.
[28]
Cubietech, «cubieboard,» de 08, 01, 2013.
[29]
Zeepro, «Zeepro,» de 10, 11, 2013.
[30]
RepRap, RepRap, http://relativedesign.us/blog/wp-content/uploads/2012/01/pc-va.jpg, 2014.
[31]
J. Andrade, «engaget,» 11 02 2014. [En línea]. http://es.engadget.com/2012/09/26/formlabs-form-1-impresora-3d/.
39
[En
línea].
línea].
Available:
Available:
Available:
ANEXO 1 PROGRAMA DE ARDUNO COMUNICACIÓN SERIAL
int input; void setup() { pinMode(13, OUTPUT); // Declaramos que utilizaremos el pin 13 como salida Serial.begin(9600); } void loop() { if (Serial.available()>0){ input=Serial.read(); if (input==’1′){ digitalWrite(13, HIGH); //Si el valor de input es 1, se enciende el led } else { digitalWrite(13, LOW); //Si el valor de input es diferente de 1, se apaga el LED } } }
40
ANEXO 2 PROGRAMA DE PROCESSING COMUNICACIĂ“N SERIAL
// Learning Processing // Daniel Shiffman // http://www.learningprocessing.com // Example 19-10: Serial communication with Strings import processing.serial.*; int r,g,b;
// Used to color background
Serial port; // The serial port object void setup() { size(200,200); // In case you want to see the list of available ports // println(Serial.list()); // Using the first available port (might be different on your computer) port = new Serial(this, Serial.list()[0], 9600); // Request values right off the bat port.write(65); } void draw() { // Set the background background(r,g,b); 41
} // Called whenever there is something available to read void serialEvent(Serial port) { // Data from the Serial port is read in serialEvent() using the readStringUntil() function with * as the end character. String input = port.readStringUntil('*'); if (input != null) { // Print message received println( "Receiving:" + input); // The data is split into an array of Strings with a comma or asterisk as a delimiter and converted into an array of integers. int[] vals = int(splitTokens(input, ",*")); // Fill r,g,b variables r = vals[0]; g = vals[1]; b = vals[2]; } // When finished ask for values again port.write(65); } }
42