{"id":12039,"date":"2024-04-24T21:10:09","date_gmt":"2024-04-24T19:10:09","guid":{"rendered":"https:\/\/www.palentino.es\/blog\/?p=12039"},"modified":"2024-04-24T21:24:49","modified_gmt":"2024-04-24T19:24:49","slug":"explorando-la-revolucion-de-los-robots-colaborativos-en-la-industria-cobots","status":"publish","type":"post","link":"https:\/\/www.palentino.es\/blog\/explorando-la-revolucion-de-los-robots-colaborativos-en-la-industria-cobots\/","title":{"rendered":"Explorando la revoluci\u00f3n de los robots colaborativos en la industria. #cobots"},"content":{"rendered":"<p>En la era de la <strong><span style=\"color: #800080;\">automatizaci\u00f3n industrial<\/span><\/strong>, la distinci\u00f3n entre los tradicionales robots industriales y sus contrapartes m\u00e1s avanzadas, <span style=\"color: #800080;\"><strong>los robots colaborativos<\/strong><\/span> o &#8220;<span style=\"color: #800080;\"><strong>cobots<\/strong><\/span>&#8220;, resalta un cambio tecnol\u00f3gico significativo. Mientras que los robots industriales han dominado durante d\u00e9cadas las l\u00edneas de montaje con su capacidad para realizar tareas pesadas y repetitivas, los cobots est\u00e1n emergiendo como facilitadores clave de la colaboraci\u00f3n hombre-m\u00e1quina, ofreciendo flexibilidad, seguridad y eficiencia sin precedentes.<\/p>\n<p>Los <span style=\"color: #800080;\"><strong>cobots<\/strong> <\/span>est\u00e1n dise\u00f1ados para <strong>operar junto a los humanos<\/strong> sin la necesidad de<strong> barreras f\u00edsicas<\/strong> que tradicionalmente se requer\u00edan para garantizar la <strong>seguridad<\/strong> en las plantas de producci\u00f3n. Equipados con sensores avanzados y tecnolog\u00edas de software sofisticadas, estos robots pueden <strong>detectar<\/strong> la <strong>presencia humana<\/strong> y adaptar sus movimientos para garantizar un entorno de trabajo seguro. Esto los hace ideales para una gama de aplicaciones que requieren una mayor adaptabilidad y una <strong>integraci\u00f3n m\u00e1s estrecha con las actividades humanas<\/strong>.<\/p>\n<p><a href=\"https:\/\/www.palentino.es\/blog\/wp-content\/uploads\/2024\/04\/ia-robot.gif\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-12043\" src=\"https:\/\/www.palentino.es\/blog\/wp-content\/uploads\/2024\/04\/ia-robot.gif\" alt=\"\" width=\"200\" height=\"200\" \/><\/a><\/p>\n<p>En t\u00e9rminos de programaci\u00f3n, los cobots ofrecen una <span style=\"color: #800080;\"><strong>notable facilidad de uso<\/strong><\/span>. Mientras que los robots industriales requieren conocimientos t\u00e9cnicos especializados y programaci\u00f3n compleja, los cobots est\u00e1n dise\u00f1ados para ser accesibles, con interfaces de usuario intuitivas y la capacidad de ser reprogramados r\u00e1pidamente para nuevas tareas. Esto los hace particularmente<span style=\"color: #800080;\"><strong> atractivos para las peque\u00f1as y medianas empresas<\/strong><\/span> que necesitan soluciones de automatizaci\u00f3n<span style=\"color: #800080;\"><strong> vers\u00e1tiles y escalables<\/strong><\/span>.<\/p>\n<p>Entre los modelos m\u00e1s destacados en el mercado se encuentran los de la serie <span style=\"color: #800080;\"><strong>UR<\/strong> <\/span>de <span style=\"color: #800080;\"><strong>Universal Robots<\/strong><\/span>, el <span style=\"color: #800080;\"><strong>LBR<\/strong> <\/span>iiwa de <span style=\"color: #800080;\"><strong>KUKA<\/strong><\/span>, la serie <span style=\"color: #800080;\"><strong>CR<\/strong> <\/span>de <span style=\"color: #800080;\"><strong>FANUC<\/strong><\/span>, los innovadores cobots de <span style=\"color: #800080;\"><strong>Techman Robot y el YuMi de ABB<\/strong><\/span>. Cada uno de estos modelos ofrece caracter\u00edsticas \u00fanicas que los hacen adecuados para diferentes entornos industriales, desde montaje de precisi\u00f3n hasta tareas de inspecci\u00f3n y mantenimiento.<\/p>\n<p><a href=\"https:\/\/www.palentino.es\/blog\/wp-content\/uploads\/2024\/04\/cobot-palentino.gif\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-12044\" src=\"https:\/\/www.palentino.es\/blog\/wp-content\/uploads\/2024\/04\/cobot-palentino.gif\" alt=\"\" width=\"200\" height=\"200\" \/><\/a><\/p>\n<p>Los <span style=\"color: #800080;\"><strong>cobots<\/strong> <\/span>no solo est\u00e1n redefiniendo las normas de seguridad y colaboraci\u00f3n en la industria, sino que tambi\u00e9n est\u00e1n abriendo nuevas oportunidades para las empresas de todos los tama\u00f1os para mejorar su eficiencia y competitividad. Al integrar cobots en sus operaciones, las empresas pueden disfrutar de una mayor flexibilidad en la producci\u00f3n, mejoras en la calidad del producto y un retorno de inversi\u00f3n m\u00e1s r\u00e1pido, todo ello mientras se fomenta un entorno de trabajo m\u00e1s din\u00e1mico y colaborativo.<\/p>\n<p>La revoluci\u00f3n cobot est\u00e1 en marcha, y las posibilidades parecen tan ilimitadas como las capacidades de estos sorprendentes robots colaborativos.<\/p>\n<p><a href=\"https:\/\/www.palentino.es\/blog\/wp-content\/uploads\/2024\/04\/Cobot-palentino.jpg\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-12041 size-full\" src=\"https:\/\/www.palentino.es\/blog\/wp-content\/uploads\/2024\/04\/Cobot-palentino.jpg\" alt=\"\" width=\"1164\" height=\"653\" srcset=\"https:\/\/www.palentino.es\/blog\/wp-content\/uploads\/2024\/04\/Cobot-palentino.jpg 1164w, https:\/\/www.palentino.es\/blog\/wp-content\/uploads\/2024\/04\/Cobot-palentino-300x168.jpg 300w, https:\/\/www.palentino.es\/blog\/wp-content\/uploads\/2024\/04\/Cobot-palentino-1024x574.jpg 1024w\" sizes=\"auto, (max-width: 1164px) 100vw, 1164px\" \/><\/a><!--more--><\/p>\n<h2><strong><span style=\"color: #800080;\">Diferencia entre un robot industrial y Cobot<\/span><\/strong><\/h2>\n<p>La principal diferencia entre un robot industrial y un cobot (o robot colaborativo) radica en su capacidad para interactuar de manera segura con los humanos en un entorno compartido:<\/p>\n<ol>\n<li><strong>Interacci\u00f3n Humano-Robot<\/strong>: Los cobots est\u00e1n dise\u00f1ados espec\u00edficamente para trabajar mano a mano con humanos dentro de un espacio de trabajo compartido. Cuentan con tecnolog\u00edas avanzadas de detecci\u00f3n y control que permiten una interacci\u00f3n segura sin necesidad de barreras de seguridad adicionales. En cambio, los robots industriales tradicionales generalmente operan de forma aislada de los trabajadores humanos, a menudo encerrados en jaulas de seguridad debido a su poder y velocidad, lo que puede ser peligroso para los humanos que se encuentren cerca.<\/li>\n<li><strong>Flexibilidad y Facilidad de Programaci\u00f3n<\/strong>: Los cobots son m\u00e1s flexibles y f\u00e1ciles de programar en comparaci\u00f3n con los robots industriales tradicionales. Est\u00e1n dise\u00f1ados para ser programados y reprogramados f\u00e1cilmente por personal no especializado, lo cual es ideal para peque\u00f1as series de producci\u00f3n o tareas que cambian frecuentemente. Los robots industriales, por otro lado, suelen requerir una programaci\u00f3n m\u00e1s compleja y especializada, haci\u00e9ndolos m\u00e1s adecuados para operaciones de alto volumen y baja variabilidad.<\/li>\n<\/ol>\n<p>Estas diferencias hacen que los cobots y los robots industriales se adapten a diferentes tipos de aplicaciones y entornos de trabajo.<\/p>\n<h2><strong><span style=\"color: #800080;\">Lenguaje con el que se programan los cobots<\/span><\/strong><\/h2>\n<p>Los cobots pueden ser programados en varios lenguajes espec\u00edficos dependiendo del fabricante y modelo del robot. Algunos de los lenguajes de programaci\u00f3n m\u00e1s comunes para cobots incluyen:<\/p>\n<p>Los cobots pueden ser programados en varios lenguajes espec\u00edficos dependiendo del fabricante y modelo del robot. Algunos de los lenguajes de programaci\u00f3n m\u00e1s comunes para cobots incluyen:<\/p>\n<ol>\n<li><strong>URScript<\/strong>: Lenguaje de programaci\u00f3n de Universal Robots, utilizado para programar sus cobots.<\/li>\n<li><strong>KRL (KUKA Robot Language)<\/strong>: Utilizado para los robots KUKA, incluidos sus cobots como el LBR iiwa.<\/li>\n<li><strong>RAPID<\/strong>: El lenguaje de programaci\u00f3n para robots de ABB, incluidos sus cobots como el YuMi.<\/li>\n<li><strong>Blockly<\/strong>: Un entorno de programaci\u00f3n visual utilizado por algunos fabricantes para programar cobots de manera m\u00e1s intuitiva, especialmente \u00fatil para usuarios sin experiencia en programaci\u00f3n.<\/li>\n<li><strong>Python y C++<\/strong>: Algunos sistemas de cobots permiten la integraci\u00f3n con estos lenguajes de alto nivel, especialmente cuando se utilizan en conjunto con plataformas como ROS (Robot Operating System).<\/li>\n<\/ol>\n<p>&nbsp;<\/p>\n<p>En la industria moderna, varios modelos de robots colaborativos (cobots) se han destacado por su versatilidad, seguridad y facilidad de programaci\u00f3n, haci\u00e9ndolos populares en una variedad de aplicaciones. Aqu\u00ed est\u00e1n algunos de los modelos de cobots m\u00e1s utilizados en la industria:<\/p>\n<h3>1. <strong>Universal Robots &#8211; Serie UR<\/strong><\/h3>\n<ul>\n<li><strong>Modelos<\/strong>: UR3, UR5, UR10, y UR16<\/li>\n<li><strong>Caracter\u00edsticas<\/strong>: Estos cobots son conocidos por su ligereza y facilidad de programaci\u00f3n. Tienen diferentes capacidades de carga, desde 3 kg hasta 16 kg, lo que los hace adecuados para una variedad de tareas, desde montaje de precisi\u00f3n hasta manipulaci\u00f3n de objetos m\u00e1s pesados.<\/li>\n<li><strong>Aplicaciones<\/strong>: Montaje, embalaje, atornillado, pruebas de calidad, y m\u00e1s.<\/li>\n<\/ul>\n<h3>2. <strong>KUKA &#8211; LBR iiwa<\/strong><\/h3>\n<ul>\n<li><strong>Modelos<\/strong>: LBR iiwa 7 R800, LBR iiwa 14 R820<\/li>\n<li><strong>Caracter\u00edsticas<\/strong>: &#8220;LBR&#8221; significa &#8220;Leichtbauroboter&#8221; (robot ligero) en alem\u00e1n, y &#8220;iiwa&#8221; significa &#8220;intelligent industrial work assistant&#8221; (asistente de trabajo industrial inteligente). Estos cobots son conocidos por su alta sensibilidad en detecci\u00f3n de fuerza y precisi\u00f3n.<\/li>\n<li><strong>Aplicaciones<\/strong>: Montaje delicado, colaboraci\u00f3n hombre-m\u00e1quina, y aplicaciones de investigaci\u00f3n.<\/li>\n<\/ul>\n<h3>3. <strong>FANUC &#8211; CR Series<\/strong><\/h3>\n<ul>\n<li><strong>Modelos<\/strong>: CR-4iA, CR-7iA, CR-7iA\/L, CR-15iA y m\u00e1s<\/li>\n<li><strong>Caracter\u00edsticas<\/strong>: FANUC ofrece cobots con diferentes rangos de carga \u00fatil y alcance. Son robustos y vienen equipados con la visi\u00f3n avanzada de FANUC y capacidades de aprendizaje.<\/li>\n<li><strong>Aplicaciones<\/strong>: Pruebas y control de calidad, montaje de precisi\u00f3n, embalaje y paletizaci\u00f3n.<\/li>\n<\/ul>\n<h3>4. <strong>Techman Robot<\/strong><\/h3>\n<ul>\n<li><strong>Modelos<\/strong>: TM5, TM12, y TM14<\/li>\n<li><strong>Caracter\u00edsticas<\/strong>: Techman destaca por integrar visi\u00f3n en sus cobots, lo que facilita aplicaciones de picking guiado por visi\u00f3n. Ofrecen una interfaz de usuario muy intuitiva y una configuraci\u00f3n simple.<\/li>\n<li><strong>Aplicaciones<\/strong>: Pick and place, inspecci\u00f3n de calidad, ensamblaje y procesos que requieran reconocimiento visual.<\/li>\n<\/ul>\n<h3>5. <strong>ABB &#8211; YuMi<\/strong><\/h3>\n<ul>\n<li><strong>Modelos<\/strong>: IRB 14000<\/li>\n<li><strong>Caracter\u00edsticas<\/strong>: YuMi es un robot de doble brazo dise\u00f1ado para una colaboraci\u00f3n segura en el espacio de trabajo compartido con los humanos sin necesidad de barreras de seguridad.<\/li>\n<li><strong>Aplicaciones<\/strong>: Montaje de peque\u00f1os componentes electr\u00f3nicos, relojes y smartphones.<\/li>\n<\/ul>\n<p>Estos modelos de cobots son l\u00edderes en el mercado debido a su tecnolog\u00eda avanzada, seguridad y adaptabilidad, permitiendo a las empresas de todas las industrias mejorar sus procesos de manufactura y montaje al integrarlos en sus l\u00edneas de producci\u00f3n.<\/p>\n<p>Estas empresas son l\u00edderes en el campo de la rob\u00f3tica colaborativa y ofrecen soluciones avanzadas que est\u00e1n redefiniendo la manera en que las tareas industriales y de producci\u00f3n se automatizan y se realizan de manera segura junto a trabajadores humanos.<\/p>\n<p><a href=\"https:\/\/www.palentino.es\/blog\/wp-content\/uploads\/2024\/04\/cobot-palentino2.png\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-12055 size-full\" src=\"https:\/\/www.palentino.es\/blog\/wp-content\/uploads\/2024\/04\/cobot-palentino2.png\" alt=\"\" width=\"1156\" height=\"660\" srcset=\"https:\/\/www.palentino.es\/blog\/wp-content\/uploads\/2024\/04\/cobot-palentino2.png 1156w, https:\/\/www.palentino.es\/blog\/wp-content\/uploads\/2024\/04\/cobot-palentino2-300x171.png 300w, https:\/\/www.palentino.es\/blog\/wp-content\/uploads\/2024\/04\/cobot-palentino2-1024x585.png 1024w\" sizes=\"auto, (max-width: 1156px) 100vw, 1156px\" \/><\/a><\/p>\n<h2><strong><span style=\"color: #800080;\">Cinco ejemplos t\u00edpicos de programacion de un cobot<\/span><\/strong><\/h2>\n<h3>1. <strong>Picking y Placing (Recogida y Colocaci\u00f3n)<\/strong><\/h3>\n<p><strong>Objetivo<\/strong>: Mover objetos de un lugar a otro dentro de una l\u00ednea de producci\u00f3n.<\/p>\n<p><strong>Descripci\u00f3n del Programa<\/strong>:<\/p>\n<ul>\n<li>Programar el cobot para que se desplace entre posiciones predefinidas, utilizando un efecto de agarre para recoger y soltar objetos.<\/li>\n<li>Se pueden utilizar sensores para confirmar la presencia del objeto antes de intentar levantarlo.<\/li>\n<li>Ejemplo de c\u00f3digo podr\u00eda ser en URScript para un cobot de Universal Robots:<\/li>\n<\/ul>\n<p style=\"text-align: left; padding-left: 40px;\"><strong>movel(pose_trans(get_actual_tcp_pose(), p[0.0, 0.0, -0.1, 0, 0, 0]), a=0.1, v=0.1) ; Bajar<\/strong><br \/>\n<strong>close_gripper() ; Cerrar el efector final para agarrar<\/strong><br \/>\n<strong>movel(pose_trans(get_actual_tcp_pose(), p[0.0, 0.0, 0.1, 0, 0, 0]), a=0.1, v=0.1) ; Subir<\/strong><\/p>\n<h3>2. <strong>Ensamblaje Asistido<\/strong><\/h3>\n<p><strong>Objetivo<\/strong>: Asistir a los trabajadores humanos en tareas de ensamblaje precisas.<\/p>\n<p><strong>Descripci\u00f3n del Programa<\/strong>:<\/p>\n<ul>\n<li>Programar al cobot para que presente partes a los trabajadores o las use para ayudar en el montaje.<\/li>\n<li>Puede incluir ajustes din\u00e1micos basados en la entrada de c\u00e1maras o sensores para alinear piezas con precisi\u00f3n.<\/li>\n<li>Ejemplo de c\u00f3digo en un lenguaje de programaci\u00f3n de alto nivel podr\u00eda controlar el flujo del programa basado en entradas sensoriales.<\/li>\n<\/ul>\n<h3>3. <strong>Inspecci\u00f3n de Calidad<\/strong><\/h3>\n<p><strong>Objetivo<\/strong>: Inspeccionar visualmente las piezas para verificar la calidad.<\/p>\n<p><strong>Descripci\u00f3n del Programa<\/strong>:<\/p>\n<ul>\n<li>Utilizar c\u00e1maras integradas en el cobot para tomar im\u00e1genes o videos de los productos.<\/li>\n<li>Programar el cobot para que ejecute movimientos consistentes y repetibles para inspeccionar los productos desde m\u00faltiples \u00e1ngulos.<\/li>\n<li>Ejemplo de c\u00f3digo podr\u00eda incluir la integraci\u00f3n con software de visi\u00f3n por computadora para el an\u00e1lisis de im\u00e1genes.<\/li>\n<\/ul>\n<h3>4. <strong>Mantenimiento de M\u00e1quinas<\/strong><\/h3>\n<p><strong>Objetivo<\/strong>: Realizar tareas de mantenimiento preventivo o correctivo en equipos.<\/p>\n<p><strong>Descripci\u00f3n del Programa<\/strong>:<\/p>\n<ul>\n<li>Programar al cobot para que realice tareas rutinarias de mantenimiento, como limpiar o cambiar ciertas partes de las m\u00e1quinas.<\/li>\n<li>Podr\u00eda incluir la habilidad de detectar el estado de la m\u00e1quina usando sensores y ajustar las acciones en consecuencia.<\/li>\n<li>Ejemplo de c\u00f3digo podr\u00eda gestionar la log\u00edstica de tareas de mantenimiento y enviar alertas cuando se complete una tarea o se detecte un problema.<\/li>\n<\/ul>\n<h3>5. <strong>Interacci\u00f3n Humano-Robot para Capacitaci\u00f3n y Demostraci\u00f3n<\/strong><\/h3>\n<p><strong>Objetivo<\/strong>: Interactuar con humanos para demostraciones o entrenamiento.<\/p>\n<p><strong>Descripci\u00f3n del Programa<\/strong>:<\/p>\n<ul>\n<li>Programar al cobot para que realice movimientos demostrativos o interactivos en ambientes educativos o de ferias comerciales.<\/li>\n<li>Incluir interacciones seguras donde los participantes puedan dar comandos a trav\u00e9s de interfaces de usuario, como botones o pantallas t\u00e1ctiles.<\/li>\n<li>Ejemplo de c\u00f3digo podr\u00eda incluir la implementaci\u00f3n de una interfaz gr\u00e1fica de usuario que permita a los usuarios seleccionar programas o controlar el cobot de forma directa.<\/li>\n<\/ul>\n<p>Estos ejemplos muestran la versatilidad de los cobots en diversas aplicaciones industriales y educativas, demostrando su capacidad para adaptarse a entornos y tareas variadas.<\/p>\n<h2><strong><span style=\"color: #800080;\">Cuando comparativo de un Cobot y un robot industrial<\/span><\/strong><\/h2>\n<table>\n<thead>\n<tr>\n<th>Caracter\u00edstica<\/th>\n<th>Robot Industrial<\/th>\n<th>Cobot (Robot Colaborativo)<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><strong>Interacci\u00f3n Humana<\/strong><\/td>\n<td>Limitada, requiere barreras de seguridad y zonas restringidas.<\/td>\n<td>Dise\u00f1ado para interactuar de manera segura con humanos.<\/td>\n<\/tr>\n<tr>\n<td><strong>Capacidad de Carga<\/strong><\/td>\n<td>Alta, puede manejar desde decenas hasta cientos de kilogramos.<\/td>\n<td>Generalmente m\u00e1s baja, adecuada para tareas m\u00e1s ligeras.<\/td>\n<\/tr>\n<tr>\n<td><strong>Velocidad<\/strong><\/td>\n<td>Alta, optimizada para producci\u00f3n masiva y eficiencia.<\/td>\n<td>Menor, adaptada para garantizar la seguridad durante la interacci\u00f3n.<\/td>\n<\/tr>\n<tr>\n<td><strong>Programaci\u00f3n<\/strong><\/td>\n<td>Requiere especializaci\u00f3n y formaci\u00f3n t\u00e9cnica.<\/td>\n<td>M\u00e1s intuitiva y accesible, a menudo con interfaces gr\u00e1ficas y programaci\u00f3n sencilla.<\/td>\n<\/tr>\n<tr>\n<td><strong>Flexibilidad<\/strong><\/td>\n<td>Baja, dise\u00f1ados para tareas espec\u00edficas y repetitivas.<\/td>\n<td>Alta, f\u00e1cilmente reconfigurables para diversas tareas.<\/td>\n<\/tr>\n<tr>\n<td><strong>Costo Inicial<\/strong><\/td>\n<td>Elevado, debido a la complejidad y necesidades de instalaci\u00f3n.<\/td>\n<td>Menor, con menores requerimientos de instalaci\u00f3n y mantenimiento.<\/td>\n<\/tr>\n<tr>\n<td><strong>Aplicaciones<\/strong><\/td>\n<td>Ideal para entornos de alta producci\u00f3n y tareas peligrosas.<\/td>\n<td>Adecuado para entornos din\u00e1micos y variados, incluyendo PMEs.<\/td>\n<\/tr>\n<tr>\n<td><strong>Seguridad<\/strong><\/td>\n<td>Requiere medidas de seguridad estrictas, como celdas y vallas.<\/td>\n<td>Incorpora medidas de seguridad avanzadas para detecci\u00f3n y respuesta inmediata.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2><\/h2>\n<h2><a href=\"https:\/\/www.palentino.es\/blog\/wp-content\/uploads\/2024\/04\/Cobot-Palentino-1.gif\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-12056\" src=\"https:\/\/www.palentino.es\/blog\/wp-content\/uploads\/2024\/04\/Cobot-Palentino-1.gif\" alt=\"\" width=\"485\" height=\"481\" \/><\/a><\/h2>\n<h2>Finalizando con 2 ejemplos en 2 lenguajes de programaci\u00f3n<\/h2>\n<p>Te proporcionar\u00e9 un ejemplo de c\u00f3mo podr\u00edas escribir un programa en Python para<strong><span style=\"color: #800080;\"> controlar un cobot utilizando el m\u00f3dulo socket<\/span><\/strong> para comunicarte con \u00e9l mediante TCP\/IP. Este tipo de comunicaci\u00f3n es com\u00fan para enviar comandos a cobots que soportan conexiones de red, como los de Universal Robots.<\/p>\n<h3>Ejemplo de Programa Python para Control de Cobot<\/h3>\n<p>Este programa enviar\u00e1 un comando simple para mover el robot a una posici\u00f3n definida:<\/p>\n<h3><strong>En Python<\/strong><\/h3>\n<div class=\"codecolorer-container python mac-classic\" style=\"overflow:auto;white-space:nowrap;width:635px;height:300px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/>2<br \/>3<br \/>4<br \/>5<br \/>6<br \/>7<br \/>8<br \/>9<br \/>10<br \/>11<br \/>12<br \/>13<br \/>14<br \/>15<br \/>16<br \/>17<br \/>18<br \/>19<br \/>20<br \/>21<br \/>22<br \/>23<br \/>24<br \/>25<br \/>26<br \/><\/div><\/td><td><div class=\"python codecolorer\"><span class=\"kw1\">import<\/span> <span class=\"kw3\">socket<\/span> <span class=\"co1\"># Importar el m\u00f3dulo de socket para comunicaciones en red<\/span><br \/>\n<span class=\"kw1\">import<\/span> <span class=\"kw3\">time<\/span> <span class=\"co1\"># Importar el m\u00f3dulo de tiempo para manejar pausas<\/span><br \/>\n<br \/>\n<span class=\"kw1\">def<\/span> send_command<span class=\"br0\">&#40;<\/span>ip<span class=\"sy0\">,<\/span> port<span class=\"sy0\">,<\/span> command<span class=\"br0\">&#41;<\/span>:<br \/>\n<span class=\"st0\">&quot;&quot;&quot; Env\u00eda un comando a trav\u00e9s de TCP\/IP al cobot. &quot;&quot;&quot;<\/span><br \/>\n<span class=\"kw1\">with<\/span> <span class=\"kw3\">socket<\/span>.<span class=\"kw3\">socket<\/span><span class=\"br0\">&#40;<\/span><span class=\"kw3\">socket<\/span>.<span class=\"me1\">AF_INET<\/span><span class=\"sy0\">,<\/span> <span class=\"kw3\">socket<\/span>.<span class=\"me1\">SOCK_STREAM<\/span><span class=\"br0\">&#41;<\/span> <span class=\"kw1\">as<\/span> sock: <span class=\"co1\"># Crear un socket TCP<\/span><br \/>\nsock.<span class=\"me1\">connect<\/span><span class=\"br0\">&#40;<\/span><span class=\"br0\">&#40;<\/span>ip<span class=\"sy0\">,<\/span> port<span class=\"br0\">&#41;<\/span><span class=\"br0\">&#41;<\/span> <span class=\"co1\"># Conectar al servidor del cobot<\/span><br \/>\n<span class=\"kw1\">print<\/span><span class=\"br0\">&#40;<\/span>f<span class=\"st0\">&quot;Conectado a {ip}:{port}&quot;<\/span><span class=\"br0\">&#41;<\/span><br \/>\n<br \/>\nsock.<span class=\"me1\">sendall<\/span><span class=\"br0\">&#40;<\/span>command.<span class=\"me1\">encode<\/span><span class=\"br0\">&#40;<\/span><span class=\"st0\">'utf-8'<\/span><span class=\"br0\">&#41;<\/span><span class=\"br0\">&#41;<\/span> <span class=\"co1\"># Enviar comando codificado a UTF-8<\/span><br \/>\n<span class=\"kw1\">print<\/span><span class=\"br0\">&#40;<\/span><span class=\"st0\">&quot;Comando enviado:&quot;<\/span><span class=\"sy0\">,<\/span> command<span class=\"br0\">&#41;<\/span><br \/>\n<br \/>\nresponse <span class=\"sy0\">=<\/span> sock.<span class=\"me1\">recv<\/span><span class=\"br0\">&#40;<\/span><span class=\"nu0\">1024<\/span><span class=\"br0\">&#41;<\/span> <span class=\"co1\"># Recibir respuesta del cobot (1024 bytes m\u00e1ximo)<\/span><br \/>\n<span class=\"kw1\">print<\/span><span class=\"br0\">&#40;<\/span><span class=\"st0\">&quot;Respuesta recibida:&quot;<\/span><span class=\"sy0\">,<\/span> response.<span class=\"me1\">decode<\/span><span class=\"br0\">&#40;<\/span><span class=\"st0\">'utf-8'<\/span><span class=\"br0\">&#41;<\/span><span class=\"br0\">&#41;<\/span> <span class=\"co1\"># Decodificar respuesta a UTF-8<\/span><br \/>\n<br \/>\n<span class=\"kw1\">def<\/span> main<span class=\"br0\">&#40;<\/span><span class=\"br0\">&#41;<\/span>:<br \/>\ncobot_ip <span class=\"sy0\">=<\/span> <span class=\"st0\">'192.168.1.5'<\/span> <span class=\"co1\"># Direcci\u00f3n IP del cobot<\/span><br \/>\ncobot_port <span class=\"sy0\">=<\/span> <span class=\"nu0\">30002<\/span> <span class=\"co1\"># Puerto para enviar comandos (usualmente 30002 para Universal Robots)<\/span><br \/>\nur_script_command <span class=\"sy0\">=<\/span> <span class=\"st0\">'movej([1.2, -0.5, 2.0, -1.0, 1.5, 0], a=1.4, v=1.2)<span class=\"es0\">\\n<\/span>'<\/span> <span class=\"co1\"># Comando URScript para mover el robot<\/span><br \/>\n<br \/>\nsend_command<span class=\"br0\">&#40;<\/span>cobot_ip<span class=\"sy0\">,<\/span> cobot_port<span class=\"sy0\">,<\/span> ur_script_command<span class=\"br0\">&#41;<\/span> <span class=\"co1\"># Llamar a la funci\u00f3n para enviar el comando<\/span><br \/>\n<br \/>\n<span class=\"kw3\">time<\/span>.<span class=\"me1\">sleep<\/span><span class=\"br0\">&#40;<\/span><span class=\"nu0\">10<\/span><span class=\"br0\">&#41;<\/span> <span class=\"co1\"># Pausar la ejecuci\u00f3n por 10 segundos para permitir que el robot complete el movimiento<\/span><br \/>\n<br \/>\n<span class=\"kw1\">if<\/span> __name__ <span class=\"sy0\">==<\/span> <span class=\"st0\">&quot;__main__&quot;<\/span>:<br \/>\nmain<span class=\"br0\">&#40;<\/span><span class=\"br0\">&#41;<\/span> <span class=\"co1\"># Ejecutar el bloque principal del programa<\/span><\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<h3><span style=\"color: #800080;\">Descripci\u00f3n del C\u00f3digo<\/span><\/h3>\n<ol>\n<li><strong>Importaciones Necesarias<\/strong>: Se importan\n<div class=\"codecolorer-container text mac-classic\" style=\"overflow:auto;white-space:nowrap;width:635px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">System.Net.Sockets<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>para la comunicaci\u00f3n TCP y<\/p>\n<div class=\"codecolorer-container text mac-classic\" style=\"overflow:auto;white-space:nowrap;width:635px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">System.Text<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>para la codificaci\u00f3n de los mensajes.<\/li>\n<li><strong>Establecimiento de la Conexi\u00f3n<\/strong>: Se utiliza\n<div class=\"codecolorer-container text mac-classic\" style=\"overflow:auto;white-space:nowrap;width:635px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">TcpClient<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>para conectar al cobot en la IP y puerto especificados.<\/li>\n<li><strong>Env\u00edo de Comandos<\/strong>: Se codifica el comando a enviar en ASCII y se env\u00eda al cobot a trav\u00e9s del\n<div class=\"codecolorer-container text mac-classic\" style=\"overflow:auto;white-space:nowrap;width:635px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">NetworkStream<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>.<\/li>\n<li><strong>Recepci\u00f3n de Respuesta<\/strong>: Opcionalmente, el programa puede recibir y mostrar una respuesta del cobot, \u00fatil para confirmar que el comando ha sido procesado.<\/li>\n<li><strong>Manejo de Excepciones<\/strong>: Se incluye manejo b\u00e1sico de excepciones para capturar y mostrar errores que puedan ocurrir durante la conexi\u00f3n o el env\u00edo de comandos.<\/li>\n<li><strong>Cierre y Salida<\/strong>: Se asegura que el stream y el cliente se cierren adecuadamente al final de la conexi\u00f3n.<\/li>\n<\/ol>\n<p>Este programa es un punto de partida para controlar cobots con VB.NET. Puedes expandirlo con funcionalidades adicionales seg\u00fan las necesidades espec\u00edficas de tu aplicaci\u00f3n, como la integraci\u00f3n con interfaces de usuario, bases de datos, o sistemas m\u00e1s complejos de manejo de errores y logs.<\/p>\n<h3><span style=\"color: #800080;\"><strong>En vb.net<\/strong><\/span><\/h3>\n<div class=\"codecolorer-container vbnet mac-classic\" style=\"overflow:auto;white-space:nowrap;width:635px;height:300px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/>2<br \/>3<br \/>4<br \/>5<br \/>6<br \/>7<br \/>8<br \/>9<br \/>10<br \/>11<br \/>12<br \/>13<br \/>14<br \/>15<br \/>16<br \/>17<br \/>18<br \/>19<br \/>20<br \/>21<br \/>22<br \/>23<br \/>24<br \/>25<br \/>26<br \/>27<br \/>28<br \/>29<br \/>30<br \/>31<br \/>32<br \/>33<br \/>34<br \/><\/div><\/td><td><div class=\"vbnet codecolorer\"><span class=\"kw1\">Imports<\/span> System<span class=\"sy0\">.<\/span><span class=\"me1\">Net<\/span><span class=\"sy0\">.<\/span><span class=\"me1\">Sockets<\/span> <span class=\"co1\">' Importar la biblioteca necesaria para TCP\/IP<\/span><br \/>\n<span class=\"kw1\">Imports<\/span> System<span class=\"sy0\">.<\/span><span class=\"me1\">Text<\/span> <span class=\"co1\">' Importar la biblioteca para manipulaci\u00f3n de cadenas de texto<\/span><br \/>\n<br \/>\n<span class=\"kw1\">Module<\/span> CobotController<br \/>\n<br \/>\n<span class=\"kw1\">Sub<\/span> Main<span class=\"br0\">&#40;<\/span><span class=\"br0\">&#41;<\/span><br \/>\n<span class=\"kw1\">Dim<\/span> cobotIp <span class=\"kw1\">As<\/span> <span class=\"kw2\">String<\/span> <span class=\"sy0\">=<\/span> <span class=\"st0\">&quot;192.168.1.5&quot;<\/span> <span class=\"co1\">' IP del cobot<\/span><br \/>\n<span class=\"kw1\">Dim<\/span> cobotPort <span class=\"kw1\">As<\/span> <span class=\"kw2\">Integer<\/span> <span class=\"sy0\">=<\/span> <span class=\"nu0\">30002<\/span> <span class=\"co1\">' Puerto para comandos de URScript<\/span><br \/>\n<span class=\"kw1\">Dim<\/span> command <span class=\"kw1\">As<\/span> <span class=\"kw2\">String<\/span> <span class=\"sy0\">=<\/span> <span class=\"st0\">&quot;movej([1.2, -0.5, 2.0, -1.0, 1.5, 0], a=1.4, v=1.2)&quot;<\/span> <span class=\"sy0\">+<\/span> Environment<span class=\"sy0\">.<\/span><span class=\"me1\">NewLine<\/span> <span class=\"co1\">' Comando URScript<\/span><br \/>\n<br \/>\n<span class=\"kw1\">Try<\/span><br \/>\n<span class=\"kw1\">Using<\/span> client <span class=\"kw1\">As<\/span> <span class=\"kw1\">New<\/span> TcpClient<span class=\"br0\">&#40;<\/span>cobotIp, cobotPort<span class=\"br0\">&#41;<\/span> <span class=\"co1\">' Crear y abrir conexi\u00f3n TCP<\/span><br \/>\n<span class=\"kw1\">Dim<\/span> data <span class=\"kw1\">As<\/span> <span class=\"kw2\">Byte<\/span><span class=\"br0\">&#40;<\/span><span class=\"br0\">&#41;<\/span> <span class=\"sy0\">=<\/span> Encoding<span class=\"sy0\">.<\/span><span class=\"me1\">ASCII<\/span><span class=\"sy0\">.<\/span><span class=\"me1\">GetBytes<\/span><span class=\"br0\">&#40;<\/span>command<span class=\"br0\">&#41;<\/span> <span class=\"co1\">' Convertir el comando a ASCII<\/span><br \/>\n<br \/>\n<span class=\"kw1\">Dim<\/span> stream <span class=\"kw1\">As<\/span> NetworkStream <span class=\"sy0\">=<\/span> client<span class=\"sy0\">.<\/span><span class=\"me1\">GetStream<\/span><span class=\"br0\">&#40;<\/span><span class=\"br0\">&#41;<\/span> <span class=\"co1\">' Obtener el flujo de datos TCP<\/span><br \/>\nstream<span class=\"sy0\">.<\/span><span class=\"me1\">Write<\/span><span class=\"br0\">&#40;<\/span>data, <span class=\"nu0\">0<\/span>, data<span class=\"sy0\">.<\/span><span class=\"me1\">Length<\/span><span class=\"br0\">&#41;<\/span> <span class=\"co1\">' Enviar el comando<\/span><br \/>\nConsole<span class=\"sy0\">.<\/span><span class=\"me1\">WriteLine<\/span><span class=\"br0\">&#40;<\/span><span class=\"st0\">&quot;Command sent: &quot;<\/span> <span class=\"sy0\">&amp;<\/span>amp; command<span class=\"br0\">&#41;<\/span><br \/>\n<br \/>\n<span class=\"co1\">' Opcional: Recibir respuesta del cobot<\/span><br \/>\n<span class=\"kw1\">Dim<\/span> buffer <span class=\"kw1\">As<\/span> <span class=\"kw1\">New<\/span> <span class=\"kw2\">Byte<\/span><span class=\"br0\">&#40;<\/span><span class=\"nu0\">1024<\/span><span class=\"br0\">&#41;<\/span> <span class=\"br0\">&#123;<\/span><span class=\"br0\">&#125;<\/span><br \/>\n<span class=\"kw1\">Dim<\/span> bytesRead <span class=\"kw1\">As<\/span> <span class=\"kw2\">Integer<\/span> <span class=\"sy0\">=<\/span> stream<span class=\"sy0\">.<\/span><span class=\"me1\">Read<\/span><span class=\"br0\">&#40;<\/span>buffer, <span class=\"nu0\">0<\/span>, buffer<span class=\"sy0\">.<\/span><span class=\"me1\">Length<\/span><span class=\"br0\">&#41;<\/span> <span class=\"co1\">' Leer respuesta del cobot<\/span><br \/>\nConsole<span class=\"sy0\">.<\/span><span class=\"me1\">WriteLine<\/span><span class=\"br0\">&#40;<\/span><span class=\"st0\">&quot;Received: &quot;<\/span> <span class=\"sy0\">&amp;<\/span>amp; Encoding<span class=\"sy0\">.<\/span><span class=\"me1\">ASCII<\/span><span class=\"sy0\">.<\/span><span class=\"me1\">GetString<\/span><span class=\"br0\">&#40;<\/span>buffer, <span class=\"nu0\">0<\/span>, bytesRead<span class=\"br0\">&#41;<\/span><span class=\"br0\">&#41;<\/span><br \/>\n<br \/>\nstream<span class=\"sy0\">.<\/span><a href=\"http:\/\/www.google.com\/search?q=CLOSE+site:msdn.microsoft.com\"><span class=\"kw7\">Close<\/span><\/a><span class=\"br0\">&#40;<\/span><span class=\"br0\">&#41;<\/span> <span class=\"co1\">' Cerrar el flujo de datos<\/span><br \/>\n<span class=\"kw1\">End<\/span> <span class=\"kw1\">Using<\/span><br \/>\n<span class=\"kw1\">Catch<\/span> ex <span class=\"kw1\">As<\/span> Exception<br \/>\nConsole<span class=\"sy0\">.<\/span><span class=\"me1\">WriteLine<\/span><span class=\"br0\">&#40;<\/span><span class=\"st0\">&quot;Error: &quot;<\/span> <span class=\"sy0\">&amp;<\/span>amp; ex<span class=\"sy0\">.<\/span><span class=\"me1\">Message<\/span><span class=\"br0\">&#41;<\/span> <span class=\"co1\">' Manejar cualquier error que pueda ocurrir<\/span><br \/>\n<span class=\"kw1\">End<\/span> <span class=\"kw1\">Try<\/span><br \/>\n<br \/>\nConsole<span class=\"sy0\">.<\/span><span class=\"me1\">WriteLine<\/span><span class=\"br0\">&#40;<\/span><span class=\"st0\">&quot;Press any key to exit...&quot;<\/span><span class=\"br0\">&#41;<\/span> <span class=\"co1\">' Esperar a que el usuario decida salir<\/span><br \/>\nConsole<span class=\"sy0\">.<\/span><span class=\"me1\">ReadKey<\/span><span class=\"br0\">&#40;<\/span><span class=\"br0\">&#41;<\/span><br \/>\n<span class=\"kw1\">End<\/span> <span class=\"kw1\">Sub<\/span><br \/>\n<br \/>\n<span class=\"kw1\">End<\/span> <span class=\"kw1\">Module<\/span><\/div><\/td><\/tr><\/tbody><\/table><\/div>\n","protected":false},"excerpt":{"rendered":"<p>En la era de la automatizaci\u00f3n industrial, la distinci\u00f3n entre los tradicionales robots industriales y sus contrapartes m\u00e1s avanzadas, los robots colaborativos o &#8220;cobots&#8220;, resalta un cambio tecnol\u00f3gico significativo. Mientras que los robots industriales han dominado durante d\u00e9cadas las l\u00edneas de montaje con su capacidad para realizar tareas pesadas y repetitivas, los cobots est\u00e1n emergiendo como facilitadores clave de la colaboraci\u00f3n hombre-m\u00e1quina, ofreciendo flexibilidad, seguridad y eficiencia sin precedentes. Los cobots est\u00e1n dise\u00f1ados para operar junto a los humanos sin la necesidad de barreras f\u00edsicas que tradicionalmente se requer\u00edan para garantizar la seguridad en las plantas de producci\u00f3n. Equipados con sensores avanzados y tecnolog\u00edas de software sofisticadas, estos robots pueden detectar la presencia humana y adaptar sus movimientos para garantizar un entorno de trabajo seguro. Esto los hace ideales para una gama de aplicaciones que requieren una mayor adaptabilidad y una integraci\u00f3n m\u00e1s estrecha con las actividades humanas. En t\u00e9rminos de programaci\u00f3n, los cobots ofrecen una notable facilidad de uso. Mientras que los robots industriales requieren conocimientos t\u00e9cnicos especializados y programaci\u00f3n compleja, los cobots est\u00e1n dise\u00f1ados para ser accesibles, con interfaces de usuario intuitivas y la capacidad de ser reprogramados r\u00e1pidamente para nuevas tareas. Esto los hace particularmente atractivos para las peque\u00f1as y medianas empresas que necesitan soluciones de automatizaci\u00f3n vers\u00e1tiles y escalables. Entre los modelos m\u00e1s destacados en el mercado se encuentran los de la serie UR de Universal Robots, el LBR iiwa de KUKA, la serie CR de FANUC, los innovadores cobots de Techman Robot y el YuMi de ABB. Cada uno de estos modelos ofrece caracter\u00edsticas \u00fanicas que los hacen adecuados para diferentes entornos industriales, desde montaje de precisi\u00f3n hasta tareas de inspecci\u00f3n y mantenimiento. Los cobots no solo est\u00e1n redefiniendo las normas de seguridad y colaboraci\u00f3n en la industria, sino que tambi\u00e9n est\u00e1n abriendo nuevas oportunidades<\/p>\n<p><a href=\"https:\/\/www.palentino.es\/blog\/explorando-la-revolucion-de-los-robots-colaborativos-en-la-industria-cobots\/\">(M\u00e1s)\u2026<\/a><\/p>\n","protected":false},"author":1,"featured_media":12042,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2264],"tags":[2265],"class_list":["post-12039","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-robotica","tag-cobots"],"_links":{"self":[{"href":"https:\/\/www.palentino.es\/blog\/wp-json\/wp\/v2\/posts\/12039","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.palentino.es\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.palentino.es\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.palentino.es\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.palentino.es\/blog\/wp-json\/wp\/v2\/comments?post=12039"}],"version-history":[{"count":13,"href":"https:\/\/www.palentino.es\/blog\/wp-json\/wp\/v2\/posts\/12039\/revisions"}],"predecessor-version":[{"id":12058,"href":"https:\/\/www.palentino.es\/blog\/wp-json\/wp\/v2\/posts\/12039\/revisions\/12058"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.palentino.es\/blog\/wp-json\/wp\/v2\/media\/12042"}],"wp:attachment":[{"href":"https:\/\/www.palentino.es\/blog\/wp-json\/wp\/v2\/media?parent=12039"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.palentino.es\/blog\/wp-json\/wp\/v2\/categories?post=12039"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.palentino.es\/blog\/wp-json\/wp\/v2\/tags?post=12039"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}