资产服务使用

点击下载全文http://events.youkuaiyun.com/chenmin/11-265-15.docx

描述Predix资产服务使用的RESTful API请求方法和参数。
客户端应用程序可以使用资产服务REST API端点访问资产数据。这些端点提供一个JSON接口,您可以将描述您的所有资产的数据提交至该接口。如果要使用这些API,您的应用程序需要发出HTTPS请求并分析响应。您可以使用任何网页开发语言访问API。
请求方法
资产服务支持POST、GET、PUT、PATCH和DELETE请求方法。
方法 描述
POST 创建或更新一组资源。您可以 POST 至一个集合,而不是一个特定资源。一个 POST 请求无法超过50 MB。
如果您打算使用审计历史,您需要将您的审计历史元数据添加到您的请求标头。
GET 检索资源。使用 GET /assets 返回所有域对象。
PUT 创建或更新一个单一资源。您可以将该方法用于个别资源,但是不能用于集合。
PATCH 更新一个资源属性的值。您可以添加、移除、修改和替换一个资源记录的值。您可以将该方法用于个别资源,但是不能用于集合。如果您关心网络效率,可以使用这种方法。
DELETE 移除或删除一个资源。您可以将该方法用于个别资源,但是不能用于集合。
最佳实践 - 添加审计历史元数据标头
如果您为资产每个写操作请求的用户定义元数据添加x-audit-metadata标头,那么以后您可以查询这些值的审计历史。将这个标头包含在您的其他请求标头中:
x-audit-metadata={“userId”:”abc”,”reason”.”xxx”,”evenTimestamp”:”2016-03-25T06:10:36.661+05:30”.eventId”.”new equip2”,”masterEventId”:new asset”,”otherInfo”:”yay”}
请求参数
资产服务支持以下请求参数:
请求参数 描述
fields 检索一个大对象的所选字段或大对象的集合。例如,从一个具有许多属性的资产中检索少量属性,表示在fields子句中的所选属性。参见部分响应请求

filter 使用一个GET请求的filter子句中的图形表达式语言(GEL)筛选结果中呈现的数据。参见图形表达式语言(GEL)句法

pageSize 定义每一页返回的实体的数量(默认值为100)。pageSize的最大值为1000。参见分页请求

以下样本请求使用filter和fields请求参数: http:///locomotives?filter=type=Diesel-electric&fields=uri,model 在下表中描述请求句法: 请求项 描述 http:/// 从VCAP_SERVICES环境变量中获取的您的资产服务实例的URI。典型的URI类似于: http://predix-asset-rc.grc-apps.svc.ice.ge.com。 /locomotives 您的请求的目标端点。 ? 分隔端点与请求参数。 filter=type=Diesel-electric 筛选子句包含一个请求所有 locomotives 的GEL查询,所述locomotives的类型为 Diesel-electric。 & 分隔请求参数。 fields=uri,model 仅请求返回uri与model的子句。 参见 样本资产服务API请求图形表达式语言(GEL)句法 了解查询与更新Predix资产存储库所用的图形表达式语言(GEL)及其运算符。 使用一个API请求的filter子句中的图形表达式语言(GEL)运行针对资产服务数据的查询。您可以使用运算符的任意组合或多个相同类型的运算符。 您可以通过一个GEL查询中的filter子句筛选结果中呈现的数据。本部分通过示例列出了多个运算符和表达式,不过您可以使用运算符的任意组合或多个相同类型的运算符。筛选不允许用于POST、PUT、PATCH或DELETE请求。 GEL符号和运算符 构造GEL查询时使用以下句法。 符号 运算符 解释 () 使用括号替代默认的从左到右的运算顺序。然后首先在括号内从左到右求值。然后将单个结果用作一项用于括号外求值。
AND 将冒号”:”读作AND。”&”是一个保留字符,在URL中有特殊含义。
参见 EQUALS (=)与AND (:)组合

| OR 将管道符”|”读作OR。
参见EQUALS (=)与OR (|)组合

.. RANGE 将两个句点(..)读作两个数字、两个日期或两个字符串之间的范围。
参见RANGE (..)运算符请求

在键和值中使用点字符
如果您的JSON键值中包括一个点字符,您需要在查询中对点(.)进行转义,以便将查询中点(.)之后的信息传递给服务器。否则,您的查询将被点截断。
uri: “/assets/1”, model.id: “76865”
如果要查询此信息: filter=model.id=76865
如果一个点出现在您的数据值中,无需对该点进行转义。
filter=hqLatLng.lat=47.655492
符号 运算符 解释
. 点 点(.)用于合并内部JSON对象的键。例如:value1.value2
如果一个键中包含一个点,您必须考虑到2种情况。
情况1:键在用户提交的数据中有点。在这种情况下,用户需要在查询时用反斜杠对其进行转义,这样就不会将它解释为GEL句法中的一个控制字符。
JSON示例:{uri: /assets/1, a.b : c}
对”c”的查询看起来就像:filter=a.b=c
情况2:键有一个在合并内部对象时形成的点。在这种情况下,不要对该点字符进行转义。
键在用户提交的数据中有点。在这种情况下,用户需要用反斜杠对其进行转义,这样就不会将它解释为GEL句法中的一个控制字符。
另一方面,如果值包含点字符,不要对其进行转义。
JSON示例:{uri : /assets/1, a:{b:c}}如果要在这种情况下查询”c”,不要对点进行转义。filter=a.b=c
.
RELATE运算
使用前向和后向相关请求查询您的资产模型中所存储对象的关系。有两种遍历关系的方式:
• 前向相关请求使用”>”运算符,在关系方向中遍历。
• 后向相关请求使用”<”运算符,在关系的反方向中遍历。
参见RELATE(”>”和“<”)运算符请求
符号 运算符 解释

FORWARD-RELATE 将大于号”>”读作前向相关。它根据谓语(属性键)选择当前所选的对象中存储的值。新选择是值的设置,而object.predicate==的值包括在当前的选择中。
[token] 带有传递闭包的FORWARD-RELATE 将方括号内的字母”t”以及后面的数字[tn]读作传递闭包令牌。例如,以下查询检索piston资产的所有父资产,在资产层级结构中上移五层:
/asset?filter=name=piston>parent[t5]
< BACKWARD-RELATE 将小于号”<”读作后向相关。如果谓语是另一个REST资源中的属性键,以及当前选择中一个REST资源的URI中的值,那么选择该对象。
例如,以下查询查找具有给定制造商的所有机车:
/locomotive?filter=(name=General Electric Transportation)

C语言-光伏MPPT算法:电导增量法扰动观察法+自动全局搜索Plecs最大功率跟踪算法仿真内容概要:本文档主要介绍了一种基于C语言实现的光伏最大功率点跟踪(MPPT)算法,结合电导增量法与扰动观察法,并引入自动全局搜索策略,利用Plecs仿真工具对算法进行建模与仿真验证。文档重点阐述了两种经典MPPT算法的原理、优缺点及其在不同光照和温度条件下的动态响应特性,同时提出一种改进的复合控制策略以提升系统在复杂环境下的跟踪精度与稳定性。通过仿真结果对比分析,验证了所提方法在快速性和准确性方面的优势,适用于光伏发电系统的高效能量转换控制。; 适合人群:具备一定C语言编程基础和电力电子知识背景,从事光伏系统开发、嵌入式控制或新能源技术研发的工程师及高校研究人员;工作年限1-3年的初级至中级研发人员尤为适合。; 使用场景及目标:①掌握电导增量法与扰动观察法在实际光伏系统中的实现机制与切换逻辑;②学习如何在Plecs中搭建MPPT控制系统仿真模型;③实现自动全局搜索以避免传统算法陷入局部峰值问题,提升复杂工况下的最大功率追踪效率;④为光伏逆变器或太阳能充电控制器的算法开发提供技术参考与实现范例。; 阅读建议:建议读者结合文中提供的C语言算法逻辑与Plecs仿真模型同步学习,重点关注算法判断条件、步长调节策略及仿真参数设置。在理解基本原理的基础上,可通过修改光照强度、温度变化曲线等外部扰动因素,进一步测试算法鲁棒性,并尝试将其移植到实际嵌入式平台进行实验验证。
【无人机协同】动态环境下多无人机系统的协同路径规划与防撞研究(Matlab代码实现)​ 内容概要:本文围绕动态环境下多无人机系统的协同路径规划与防撞问题展开研究,提出基于Matlab的仿真代码实现方案。研究重点在于在复杂、动态环境中实现多无人机之间的高效协同飞行与避障,涵盖路径规划算法的设计与优化,确保无人机集群在执行任务过程中能够实时规避静态障碍物与动态冲突,保障飞行安全性与任务效率。文中结合智能优化算法,构建合理的成本目标函数(如路径长度、飞行高度、威胁规避、转弯角度等),并通过Matlab平台进行算法验证与仿真分析,展示多机协同的可行性与有效性。; 适合人群:具备一定Matlab编程基础,从事无人机控制、路径规划、智能优化算法研究的科研人员及研究生。; 使用场景及目标:①应用于灾害救援、军事侦察、区域巡检等多无人机协同任务场景;②目标是掌握多无人机系统在动态环境下的路径规划与防撞机制,提升协同作业能力与自主决策水平;③通过Matlab仿真深入理解协同算法的实现逻辑与参数调优方法。; 阅读建议:建议结合文中提供的Matlab代码进行实践操作,重点关注目标函数设计、避障策略实现与多机协同逻辑,配合仿真结果分析算法性能,进一步可尝试引入新型智能算法进行优化改进。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值