User Tools

Site Tools


tutorials:robots:ur:modbus

MODBUS al UR

He utilitzat el EasyModBUS. Que a més pot importar-se al processing arrastrant-lo. easymodbustcp.java-master.zip, easymodbus_jar.zip

Ho he fet de la següent manera:

Per fer un servidor normalment has de ser root, així que tant el UR, com el mòbils, fan de client. Així que el primer pas es montar un servidor de mobbus(cal execur-lo com SU)

1. Posar en marxa el sevidor a un ordinador, has de ser root 2. Als client hauras de posar la ip del servidor 3. Podem fer canvis al holding register des de qualsevol client, així aconseguin la comunicació entre tots ells, fa com de broker al IOT

Pose la captura de pantalles: Mes que res perquè el holding revister te diversos noms.

Servidor:

URMODBUS:

Tambè hi ha apllicacions mòbil(modbus_tcp_client):

Quan es connecta surt verd a sota.

I amb el Processing igual, arrastres el jar sobre el processing (cal posar cada vegada que enviem una dada al servidot mitjançant un try)

UR com servidor

Te un servidor activat on pots consultar per exemple la posposició de les articulacions. Dintre d'aquest zip hi ha les direccions dels registres dels que podem consultar, i exemples de scrpts etc…

ur_3_fitxers_reduit.zip

Es cada vegada més important, semplifica molt la producció, substitueix cel·lules flexibles, automats…perque amb els sobprogrames aquets que posavem amb la funcio sync() que es posa en marxa al mateix temps que el robot en realitat tens un automat. Com els scripts del les pantalles…. i no fa falta afegir-li un automat al robot com estem aconstumbrats a fer sempre, sobretot per influencia dels servomotors i inverters, que si es necessari posar-li automat, però als HMI i robots no els cal posar un automat, de fet poder arribar a tenir mes potencial en quant a cominicació, un robot o un hami son en realitat ordinadors industrials i el ultims que he utilitzat waintek(hmi) i ur tenen linux.

actualitat_infoplc_22_marzo-abril.pdf

EL PLC ha tingut el seu explendor com el rele el contactor, que farà que no deaparegui del tot, però igual que el inverter ha desplaçat en algunes aplicacions al contactor, robots i hmi subtituiran a PLC, hi ha llocs que mai ha sigut una solució, al CNC per exemple i ara per motius economics volen afegir-lo al PLC.

De tota manera per educació i formació el sofware lliure pot fer tot el que avui fan aquest sistemes industrials, amb menys capacitats, però aprns més son mes economiques que per a formació profecional es fonamental… es la meva opinio personal. modbus_processing.zip

UR MODBUS PROCESSING

Es tant senzill com arrastrar el easymodbus.jar, import i seguir els exemples, aquest funciona amb el servidor al mateix ordinador que el robot.

import de.re.easymodbus.modbusclient.*;
ModbusClient modbusClient = new ModbusClient("127.0.0.1",502);
int initialTime = millis();
int interval=1000;

void setup(){
  try
    {
      modbusClient.Connect();
      //modbusClient.WriteSingleCoil(0, true);
      //modbusClient.WriteSingleRegister(0, 1234);
      //modbusClient.WriteMultipleRegisters(11, ModbusClient.ConvertFloatToTwoRegisters((float) 123.56));
      //System.out.println(modbusClient.ReadCoils(0, 1)[0]);
      System.out.println(modbusClient.ReadHoldingRegisters(0, 1)[0]);
     
      //System.out.println(ModbusClient.ConvertRegistersToFloat(modbusClient.ReadHoldingRegisters(11, 2)));
    }
    catch (Exception e)
    {    
    }  
    
    initialTime = millis();
}
void draw(){
  
    if (millis() - initialTime > interval){
      try{
     System.out.println(modbusClient.ReadHoldingRegisters(0, 1)[0]);
      }
       catch (Exception e){    }
    // reset counter
    initialTime = millis();
  }
  
  
}

També podem llegir cada segon el servidor:

tutorials/robots/ur/modbus.txt · Last modified: 2021/09/19 14:41 (external edit)