fanuc-driver icon indicating copy to clipboard operation
fanuc-driver copied to clipboard

docs: What configuration in `config.yml` is necessary?

Open tukusejssirs opened this issue 3 years ago • 9 comments

Related: #25


Current config.yml contains the following config per machine:

machines:
  - id: sim
    enabled: !!bool false
    type: l99.driver.fanuc.FanucMachine, fanuc
    strategy: l99.driver.fanuc.collectors.UseCase01, fanuc
    handler: l99.driver.fanuc.handlers.Native, fanuc
    
    broker:
      enabled: !!bool true
      net_ip: 10.20.30.102
      net_port: !!int 1883
      auto_connect: !!bool true
      publish_status: !!bool true
      publish_arrivals: !!bool true
      publish_changes: !!bool true
      publish_disco: !!bool true
      disco_base_topic: fanuc
      anonymous: !!bool true
      user: 
      password: 

    l99.driver.fanuc.FanucMachine, fanuc:
      sweep_ms: !!int 1000
      net_ip: 10.20.30.101
      net_port: !!int 8193
      net_timeout_s: !!int 3

As I understand it, the following properties are required:

  • machine.id unique for each machine;
  • machine.enabled if we shoud gather the data (it does not need to be required if we set a default value);
  • machine.type;
  • machine.strategy;
  • machine.handler;

The following properties are optional:

  • machine.broker: configure MQTT:
    • actually, we don’t configure the broker (MQTT server), but the MQTT client created and used by fanuc-driver, therefore I suggest to rename it the machine.mqtt;
    • if machine.broker is to be defined, the following properties are required:
      • machine.broker.enabled if we should use MQTT to publish the gathered data (it does not need to be required if we set a default value);
      • machine.broker.net_ip IP address or domain where the MQTT server is located;
      • machine.broker.net_port port which is used by the MQTT server;
    • optional properties (unless there is no default value set yet):
      • machine.broker.auto_connect;
      • machine.broker.publish_status;
      • machine.broker.publish_arrivals;
      • machine.broker.publish_changes;
      • machine.broker.publish_disco;
      • machine.broker.disco_base_topic;
      • machine.broker.anonymous;
      • machine.broker.user;
      • machine.broker.password.

I have no idea what is l99.driver.fanuc.FanucMachine, fanuc for. Is it required? Does its properties have their default values? Is it only used when using a simulator?

tukusejssirs avatar Oct 30 '21 09:10 tukusejssirs