-
Notifications
You must be signed in to change notification settings - Fork 26
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
docs: What configuration in config.yml
is necessary?
#39
Comments
|
Agreed, |
In my opinion, there should be a That way we could configure everything once unless we have machines with special needs. |
configuration has changed. It is somewhat modular. https://github.com/Ladder99/fanuc-driver/blob/develop/fanuc/config-example.yml |
Thanks, @MRIIOT, for letting me know! I’d like to watch for any new commits in As for the new config, could you better describe it? Or even better: update the docs and move them to Specific questions and/or statements that needs to be validated if they are true:
Is this config monitored for content changes? If not, I see a potential problem: how could I toggle the monitoring of a machine at runtime? I think it might be a good idea to implement a basic API (e.g. REST API) to enable runtime monitoring toggling, as well as shutting down After reading L142 (and the comments at the begingging of
|
I'll update the docs eventually.
Correct, and user that is adding Fanuc machines should not touch
Ok, noted.
No, this is not possible yet.
Yes,
Made a change to this. Moved the transport specific stuff higher. fanuc-driver/fanuc/config-example.yml Lines 83 to 91 in cd08982
fanuc-driver/fanuc/config-example.yml Lines 138 to 155 in cd08982
Determines if the Focas data is passed as JSON or .NET POCO to transport classes. This will be removed in the future.
No. The YAML only defines which classes in
This is where you define the Fanuc connection details and MQTT,Influx,SHDR, etc connection details. |
@MRIIOT, can’t I simply move the user:
# focas sources
source-1: &source-1
# example fanuc source
l99.driver.fanuc.FanucMachine, fanuc:
sweep_ms: !!int 1000
net:
# Machine IP address
ip: 1.2.3.4
port: !!int 8193
timeout_s: !!int 0
machines:
- id: m13
<< : *machine-base # base Fanuc configuration
<< : *machine-disabled # omit this machine setup from runtime; remove to make active
<< : *source-1 # where to get data
<< : *collector-1 # what data to get and how to transform data
<< : *target-mqtt-1 # where to send data
into this: machines:
- id: m13
<< : *machine-base # base Fanuc configuration
<< : *machine-disabled # omit this machine setup from runtime; remove to make active
# << : *source-1 # where to get data
<< : *collector-1 # what data to get and how to transform data
<< : *target-mqtt-1 # where to send data
source-1:
l99.driver.fanuc.FanucMachine, fanuc:
sweep_ms: !!int 1000
net:
# Machine IP address
ip: 1.2.3.4
port: !!int 8193
timeout_s: !!int 0 I think that adding a separate
|
Yes, without the
|
I think that the configuration should be less bloated, less circular (currently we need to define something in
Here is an example of the config structure I suggest. I might have overloops some use cases. Note that I provided some configuration items (even though they should be inherited) just to provide some extra information.
|
Related: #25
Current
config.yml
contains the following config per machine: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:fanuc-driver
, therefore I suggest to rename it themachine.mqtt
;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;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?The text was updated successfully, but these errors were encountered: