device-bacnet-c v4.0.2 配置说明文档

发布时间:2026/8/11 21:58:56

device-bacnet-c v4.0.2 配置说明文档
device-bacnet-c 配置说明文档一、配置文件类型与格式文件类型格式目录说明主配置configuration.yamlYAMLres/服务主配置唯一格式设备 ProfileJSON或YAMLProfilesDir两种格式均支持SDK 优先扫描.yaml再扫描.json设备实例JSONDevicesDir仅支持 JSONProvision WatcherJSONProvisionWatchersDir仅支持 JSON二、主配置文件configuration.yaml完整配置模板Writable:LogLevel:INFOInsecureSecrets:{}Telemetry:Interval:30sPublishTopicPrefix:edgex/telemetryMetrics:EventsSent:falseReadingsSent:falseReadCommandsExecuted:falseSecuritySecretsRequested:falseSecuritySecretsStored:falseService:Host:127.0.0.1Port:59980RequestTimeout:5sStartupMsg:BACnet device service startedHealthCheckInterval:10sServerBindAddr:MaxRequestSize:0CORSConfiguration:EnableCORS:falseCORSAllowCredentials:falseCORSAllowedOrigin:https://localhostCORSAllowedMethods:GET, POST, PUT, PATCH, DELETECORSAllowedHeaders:Authorization, Accept, Accept-Language, Content-Language, Content-Type, X-Correlation-IDCORSExposeHeaders:Cache-Control, Content-Language, Content-Length, Content-Type, Expires, Last-Modified, Pragma, X-Correlation-IDCORSMaxAge:3600Device:DataTransform:trueDiscovery:Enabled:trueInterval:0MaxCmdOps:0MaxEventSize:0Labels:[]ProfilesDir:./res/profilesDevicesDir:./res/devicesProvisionWatchersDir:./res/provision_watchersEventQLength:0AllowedFails:0DeviceDownTimeout:0UpdateLastConnected:falseClients:core-metadata:Host:127.0.0.1Port:59881core-command:Host:127.0.0.1Port:59882MessageBus:Disabled:falseType:mqttProtocol:tcpHost:127.0.0.1Port:1883BaseTopicPrefix:edgexAuthMode:noneSecretName:Optional:ClientId:device-bacnetQos:0KeepAlive:60Retained:falseCertFile:KeyFile:SkipCertVerify:falseRegistry:Type:keeperHost:127.0.0.1Port:59890SecretStore:Type:vaultHost:127.0.0.1Port:8200Protocol:httpPath:device-bacnet/RootCaCertPath:ServerName:TokenFile:/tmp/edgex/secrets/device-bacnet/secrets-token.jsonAuthentication:AuthType:X-Vault-TokenSecretsFile:DisableScrubSecretsFile:falseDriver:# BACnet/IPBBMD_ADDRESS:BBMD_PORT:# BACnet/MSTPDefaultDevicePath:/dev/ttyUSB0配置项说明Writable — 运行时可动态修改路径类型默认值Writable/LogLevelstringINFOWritable/InsecureSecretsmap{}Writable/Telemetry/Intervalstring30sWritable/Telemetry/PublishTopicPrefixstringedgex/telemetryWritable/Telemetry/Metrics/EventsSentboolfalseWritable/Telemetry/Metrics/ReadingsSentboolfalseWritable/Telemetry/Metrics/ReadCommandsExecutedboolfalseWritable/Telemetry/Metrics/SecuritySecretsRequestedboolfalseWritable/Telemetry/Metrics/SecuritySecretsStoredboolfalseService — 服务基本配置路径类型默认值Service/Hoststring主机名Service/Portint59999Service/RequestTimeoutstring5sService/StartupMsgstringService/HealthCheckIntervalstringService/ServerBindAddrstringService/MaxRequestSizeint0Service/CORSConfiguration/EnableCORSboolfalseService/CORSConfiguration/CORSAllowCredentialsboolfalseService/CORSConfiguration/CORSAllowedOriginstringhttps://localhostService/CORSConfiguration/CORSAllowedMethodsstringGET, POST, PUT, PATCH, DELETEService/CORSConfiguration/CORSAllowedHeadersstringAuthorization, Accept, Accept-Language, Content-Language, Content-Type, X-Correlation-IDService/CORSConfiguration/CORSExposeHeadersstringCache-Control, Content-Language, Content-Length, Content-Type, Expires, Last-Modified, Pragma, X-Correlation-IDService/CORSConfiguration/CORSMaxAgeint3600Device — 设备管理配置路径类型默认值Device/DataTransformbooltrueDevice/Discovery/EnabledbooltrueDevice/Discovery/Intervalint0Device/MaxCmdOpsint0Device/MaxEventSizeint0Device/Labels[]string[]Device/ProfilesDirstringDevice/DevicesDirstringDevice/ProvisionWatchersDirstringDevice/EventQLengthint0Device/AllowedFailsint0Device/DeviceDownTimeoutint0Device/UpdateLastConnectedboolfalseClients — 依赖服务地址路径类型默认值Clients/core-metadata/Hoststring—Clients/core-metadata/Portint0Clients/core-command/Hoststring—Clients/core-command/Portint0环境变量覆盖CLIENTS_CORE_METADATA_HOST、CLIENTS_CORE_METADATA_PORT、CLIENTS_CORE_COMMAND_HOST、CLIENTS_CORE_COMMAND_PORTMessageBus — 消息总线路径类型默认值MessageBus/DisabledboolfalseMessageBus/TypestringmqttMessageBus/ProtocolstringMessageBus/HoststringlocalhostMessageBus/Portint0MessageBus/BaseTopicPrefixstringedgexMessageBus/AuthModestringnoneMessageBus/SecretNamestringMessageBus/Optional/ClientIdstringMessageBus/Optional/Qosint0MessageBus/Optional/KeepAliveint60MessageBus/Optional/RetainedboolfalseMessageBus/Optional/CertFilestringMessageBus/Optional/KeyFilestringMessageBus/Optional/SkipCertVerifyboolfalseRegistry — 注册中心路径类型默认值Registry/Typestring—Registry/Hoststring—Registry/Portint—SecretStore — 密钥存储路径类型默认值SecretStore/TypestringvaultSecretStore/HoststringlocalhostSecretStore/Portint8200SecretStore/ProtocolstringhttpSecretStore/Pathstringsvcname/SecretStore/RootCaCertPathstringSecretStore/ServerNamestringSecretStore/TokenFilestring/tmp/edgex/secrets/svcname/secrets-token.jsonSecretStore/Authentication/AuthTypestringX-Vault-TokenSecretStore/SecretsFilestringSecretStore/DisableScrubSecretsFileboolfalseDriver — 设备驱动BACnet专用路径适用模式类型默认值Driver/BBMD_ADDRESSBACnet/IPstringDriver/BBMD_PORTBACnet/IPstringDriver/DefaultDevicePathBACnet/MSTPstring/dev/ttyUSB0三、设备 ProfileJSON / YAML支持两种格式存放在Device/ProfilesDir目录。SDK 先扫描.yaml再扫描.json。{name:BAC-5901CE,manufacturer:KMC,model:BAC-5901CE,labels:[B-AAC],description:KMC BAC-5901 BACnet General Purpose Controller,apiVersion:v3,deviceResources:[{name:Temperature,description:Get the current temperature,attributes:{type:analog-input,instance:1,property:present-value,index:4294967295},properties:{valueType:Float32,readWrite:R,units:Degrees Fahrenheit,defaultValue:0,minimum:,maximum:,mask:0,shift:0,scale:1,offset:0,base:0,assertion:,mediaType:},tags:{}}],deviceCommands:[{name:ActiveSetpoints,readWrite:RW,resourceOperations:[{deviceResource:ActiveCoolingSetpoint,defaultValue:,mappings:{}}],tags:{}}]}deviceResource 字段字段类型必填说明namestring是资源名称descriptionstring否资源描述attributesmap是BACnet 特定属性attributes/typestring | int是BACnet 对象类型attributes/instanceint是BACnet 对象实例号attributes/propertystring | int否默认present-valueBACnet 属性attributes/indexint否默认无索引数组属性索引properties/valueTypestring是数据类型properties/readWritestring是R/RW/Wproperties/unitsstring否单位properties/defaultValuestring否默认值properties/minimumstring否最小值properties/maximumstring否最大值properties/maskstring否位掩码默认0表示不启用properties/shiftstring否位移properties/scalestring否缩放因子默认1properties/offsetstring否偏移量默认0properties/basestring否基数默认0properties/assertionstring否断言表达式properties/mediaTypestring否二进制媒体类型tagsmap否资源标签BACnet type 字符串映射analog-input/analog-output/analog-value/binary-input/binary-output/binary-value/device。其他类型用数字。BACnet property 字符串映射present-value/object-name。其他属性用数字。valueType 支持Bool/String/Uint8/Uint16/Uint32/Int8/Int16/Int32/Float32/Float64。不支持 Uint64、Int64、Enum、OctetString、Date、Time。deviceCommands 字段字段类型必填说明namestring是命令名称readWritestring是R/RW/WresourceOperations[]object是操作的资源列表resourceOperations[]/deviceResourcestring是引用的 deviceResource 名称resourceOperations[]/defaultValuestring否默认值resourceOperations[]/mappingsmap否值映射表tagsmap否命令标签四、设备实例JSON存放在Device/DevicesDir目录。仅支持 JSON。支持单个对象或对象数组。{name:KMC-BAC-5901CE,profileName:BAC-5901CE,serviceName:device-bacnet,description:KMC BAC-5901CE Device,adminState:UNLOCKED,operatingState:UP,labels:[KMC BAC 5901CE Device],tags:{},protocols:{BACnet-IP:{DeviceInstance:52,Port:0xBAC0}},autoEvents:[{sourceName:Temperature,interval:30s,onChange:false,onChangeThreshold:0.0}]}字段说明字段类型必填说明namestring是设备名称profileNamestring是关联的 Profile 名称serviceNamestring否所属服务名非必填服务自动填充descriptionstring否设备描述adminStatestring否LOCKED/UNLOCKEDoperatingStatestring否UP/DOWNlabels[]string否设备标签tagsmap否设备标签protocolsmap是协议配置autoEvents[]object否自动事件配置protocols — BACnet/IP字段类型必填默认值BACnet-IP/DeviceInstancestring是—BACnet-IP/Portstring否0xBAC0(47808)protocols — BACnet/MSTP字段类型必填默认值BACnet-MSTP/DeviceInstancestring是—BACnet-MSTP/Pathstring否服务默认路径autoEvents字段类型必填说明sourceNamestring是deviceResource 或 deviceCommand 名称intervalstring是采集间隔如30s、1m、1honChangebool否默认false仅在值变化时上报onChangeThresholdfloat否默认0.0变化阈值浮点类型五、Provision WatcherJSON存放在Device/ProvisionWatchersDir目录。仅支持 JSON。{name:BACnet-Watcher,adminState:UNLOCKED,identifiers:{Protocol:BACnet.*},blockingIdentifiers:{},discoveredDevice:{profileName:SimpleServer,adminState:UNLOCKED,autoEvents:[{sourceName:analog-output-0,interval:10s,onChange:false}]}}字段说明字段类型必填说明namestring是Watcher 名称adminStatestring否Watcher 自身状态identifiersmap是匹配规则key 为属性名value 为正则表达式blockingIdentifiersmap否阻止匹配的标识符列表discoveredDevice/profileNamestring是匹配到的设备使用的 ProfilediscoveredDevice/adminStatestring否设备初始 adminStatediscoveredDevice/autoEvents[]object否自动配置的 AutoEvent六、命令行参数参数说明-cd, --configDir dir配置文件目录-p, --profile name配置文件名-r, --registry启用注册中心-i, --instance name服务实例名后缀-h, --help帮助信息Docker 默认启动参数/device-bacnet-ip/device-bacnet-c\-cpkeeper://127.0.0.1:59890\--registry\--confdir/res七、配置优先级配置合并顺序高优先级覆盖低优先级C SDK 代码默认值config.c→edgex_common_config_defaultsedgex_private_config_defaults本项目main.c中 Driver 默认值BBMD_ADDRESS、BBMD_PORT、DefaultDevicePathconfiguration.yaml文件环境变量覆盖格式key 中/替换为_全大写。如Service/Host→SERVICE_HOSTClients 专用环境变量CLIENTS_CORE_METADATA_HOST等注册中心配置--registry时configuration.yaml仅作为 fallback八、Docker Host 网络模式最小配置Writable:LogLevel:INFOService:Host:127.0.0.1Port:59980Device:ProfilesDir:./res/profilesDevicesDir:./res/devicesClients:core-metadata:Host:127.0.0.1Port:59881core-command:Host:127.0.0.1Port:59882MessageBus:Type:mqttProtocol:tcpHost:127.0.0.1Port:1883Optional:ClientId:device-bacnetDriver:{}

相关新闻

海外短剧项目 50 条落地实操建议,一套云微海外短剧系统打通全运营闭环

海外短剧项目 50 条落地实操建议,一套云微海外短剧系统打通全运营闭环

2026/8/11 21:58:56

海外短剧项目 50 条落地实操建议,一套云微海外短剧系统打通全运营闭环 问题描述 海外短剧项目在推进中,团队常遇到内容水土不服、投放成本失控、版权边界模糊、支付链路不稳定等问题。这些问题没有标准答案,但有一些共通的实操经验值得参考…

数据驱动游戏武器平衡:从Python分析到A/B测试的完整框架

数据驱动游戏武器平衡:从Python分析到A/B测试的完整框架

2026/8/11 21:48:56

1. 这篇文章真正要解决的问题 “武器平衡性策划”听起来像是一个纯粹的游戏策划岗位,但如果你点进这篇文章,我猜你关心的远不止“如何给一把枪调几个数值”。无论是《无畏契约》、《CS:GO》、《APEX英雄》还是《使命召唤》,武器平衡性永远是社…

Starship终端提示工具:打造极致高效的命令行工作环境终极指南

Starship终端提示工具:打造极致高效的命令行工作环境终极指南

2026/8/11 21:48:56

Starship终端提示工具:打造极致高效的命令行工作环境终极指南 【免费下载链接】starship ☄🌌️ The minimal, blazing-fast, and infinitely customizable prompt for any shell! 项目地址: https://gitcode.com/GitHub_Trending/st/starship 在…

Windows原地升级助手:轻松实现系统版本自由切换

Windows原地升级助手:轻松实现系统版本自由切换

2026/8/11 23:19:15

Windows原地升级助手:轻松实现系统版本自由切换 【免费下载链接】In-Place_Upgrade_Helper Helper-Tool for Windows 10/11/Server In-Place-upgrades and changing between Windows Editions 项目地址: https://gitcode.com/GitHub_Trending/in/In-Place_Upgrade…

High Speed Scanner

High Speed Scanner

2026/8/11 23:19:15

High Speed Scanner 高速扫描仪

昇腾AI智能体自动管理安卓应用

昇腾AI智能体自动管理安卓应用

2026/8/11 23:19:15

针对昇腾Model-Agent模型适配大赛第二季中,基于昇腾(Ascend)与AtomGit AI技术实现安卓手机应用的自动化删除与安装任务,其核心在于构建一个具备环境感知、决策规划和自动化执行能力的智能体(Agent)。该Agen…

能源行业业扩报装自动化方案:基于大模型Agent的电力营销数智化转型实践

能源行业业扩报装自动化方案:基于大模型Agent的电力营销数智化转型实践

2026/8/11 23:19:15

在能源行业数字化转型与新型电力系统建设的宏观背景下,业扩报装作为电力营销服务的核心环节,其自动化方案正经历从传统人工流程向数智化驱动的深刻变革。随着《新型电力系统建设“十五五”规划》的发布,电网企业提升营销数字化水平已成为必然…

如何在5分钟内搭建免费Web POS系统:NexoPOS完整实战指南

如何在5分钟内搭建免费Web POS系统:NexoPOS完整实战指南

2026/8/11 23:19:15

如何在5分钟内搭建免费Web POS系统:NexoPOS完整实战指南 【免费下载链接】NexoPOS Laravel-based web POS system with Vue.js, Tailwind CSS, inventory management, sales processing, customer records, reports, and modular extension support. 项目地址: ht…

字节10万亿参数模型:业务架构视角下,MoE、蒸馏与算力账本怎么算?

字节10万亿参数模型:业务架构视角下,MoE、蒸馏与算力账本怎么算?

2026/8/11 23:09:15

一、MoE架构:10万亿参数的业务真相 当前,前沿大模型普遍采用MoE(Mixture-of-Experts)架构。其核心设计是:总参数量巨大,但每次前向传播只激活其中一小部分专家网络。 DeepSeek V4-Pro:总参数1.6…

比较好的亚太EMBA,问了6位校友师资差别真的挺大

比较好的亚太EMBA,问了6位校友师资差别真的挺大

2026/8/10 5:58:32

比较好的亚太EMBA核心差异先看什么?对于希望兼顾工作与系统管理能力提升的亚太区高管而言,筛选匹配度高的EMBA项目时,师资配置是决定学习体验与实际收获的核心要素之一。我们结合3-4个公开信息透明、办学历史较长的亚太区主流EMBA项目特点&am…

备考3个月对比6份资料 海外游学的亚洲EMBA面试注意点

备考3个月对比6份资料 海外游学的亚洲EMBA面试注意点

2026/8/11 8:44:43

备考海外游学的亚洲EMBA面试,核心要围绕项目国际化设计逻辑、个人跨文化管理经验匹配度两个维度准备,避免把游学模块等同于普通旅游参访的认知偏差。不少备考者花3个月对比6份资料,却容易忽略面试官对“国际视野落地能力”的考察——比如香港…

比较好的国内EMBA,问了二十位校友聊透人脉价值

比较好的国内EMBA,问了二十位校友聊透人脉价值

2026/8/11 15:57:54

比较好的国内EMBA核心差异体现在哪些方面?比较好的国内EMBA的核心长期价值,很大程度上依托于校友网络的连接质量与资源生态的活跃度,这也是不少高管在择校时优先考量的因素。我们结合3-4个市场关注度较高的项目公开信息,从课程、师…

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

2026/8/8 5:07:31

一天写完毕业论文在2026年已不再是天方夜谭。2026年最炸裂、实测能大幅提速的AI论文写作工具,覆盖选题构思、文献整理、内容生成、格式排版等核心场景,真正帮你高效搞定论文难题。 一、全流程王者:一站式搞定论文全链路(一天定稿首…

导师推荐!2026最新AI论文工具测评与实用推荐

导师推荐!2026最新AI论文工具测评与实用推荐

2026/8/9 13:42:46

2026年真正好用的AI论文工具,核心看生成的论文质量、低AI味、格式正确、学术适配四大指标。综合实测,千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队,覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。 一、…

告别游戏崩溃:XCOM 2模组管理器的智能革命

告别游戏崩溃:XCOM 2模组管理器的智能革命

2026/8/8 2:30:15

告别游戏崩溃:XCOM 2模组管理器的智能革命 【免费下载链接】xcom2-launcher The Alternative Mod Launcher (AML) is a replacement for the default game launchers from XCOM 2 and XCOM Chimera Squad. 项目地址: https://gitcode.com/gh_mirrors/xc/xcom2-lau…