相关推荐
【Thingsboard】源码分析:下行 rpc 调用
log.info("[日志][ DefaultTbCoreDeviceRpcService -> processRpcResponseFromDeviceActor ]rpc2w响应处理");请求由 DeviceActor 发送出去后,transport会发送响应到队列里,队列服务获取到响应后同样是先给 tbCore。# deviceActor 将响应发送给 tb-core, tb-core 将响应发送给 rule-engine。# DeviceActor处理最终的rpc请求。
ThingsBoard教程(十二):部件库中使用echarts
在部件库中使用echarts,引入外部资源
ThingsBoard教程(十一):部件库的入门知识
ThingsBoard 部件库 入门体验, helloword
ThingsBoard教程(十三):部件的基本API解释
部件的基本API 解释,打好基础。
ThingsBoard教程(十四):部件库基本JS函数API解释,及变量的使用,显示
部件库的JS 函数解释,变量使用
ThingsBoard教程(二六):设备使用HTTP协议 API链接到ThingsBoard
thingsboard支持很多种设备链接协议,包括http协议 mqtt协议,coap协议,lwm2m协议, snmp协议。本文我就来给大家介绍一下如何通过最简单的HTTP协议,来让你的设备链接到ThingsBoard,上传数据,更新属性。ThingsBoard服务端,支持HTTP和HTTPS协议,官方有提供很多有关设备上传数据的接口,如遥测接口,更新属性接口,RPC接口。 在调用这些接口时,我们都需要一个的东西,这个就是接口访问的令牌,我们可以在设备想详情页得到它,只有有介绍过。 如果你调用接口的URL不
ThingsBoard教程(一):ThingBoard介绍及安装
ThingsBoard介绍 最近看了很多开源的物联网的项目,其中有一个让我印象很深,那就是Thingsboard 下面我就给大家介绍一下这个项目,并指导大家如何在本地安装一个Thingsboard来体验它。 首先引用官网的项目介绍就是 一个开源的用于数据收集,处理,可视化和设备管理的开源物联网平台。 它通过行业标准的物联网协议(MQTT,CoAP和HTTP)实现设备连接,并支持云和本地部署。ThingsBoard结合了可伸缩性,容错性和性能,因此您永远不会丢失数据。 用它开源收集链接设备,收集设备的数据,
ThingsBoard教程(十):前端初级定制化
ThingsBoard 前端初级定制
ThingsBoard教程(十七):自定义开发时间图表
前言 各位读者好,截止目前,ThingsBoard系列文章已经做了十篇,分别是 ThingsBoard教程(一):ThingBoard介绍及安装 ThingsBoard教程(二):租户,租户配置,部件组模块的使用 ThingsBoard教程(三):系统设置模块的使用 ThingsBoard教程(四):规则链简介与操作 ThingsBoard教程(五):客户,资产管理 ThingsBoard教程(六):设备管理 ThingsBoard教程(七):模拟设备遥测 ThingsBoard教程(八):自定义UI T
ThingsBoard教程(二十):使用规则链过滤遥测数据
上一篇文章我们对规则链中的节点类型做了大致的概述,在tb中规则节点一共有6中类型本来这一篇我是想着对每一种类型下的具体规则节点进行一一的详细讲解,但这样 不免会脱离实际使用。于是乎在详细讲解每一个具体节点之前,我们先做一些规则链的实践,在实践中学习,更加具体,也更有代入感。那么本篇文章就来讲解第一个案例,使用规则链对遥测的数据进行筛选,过滤。这其中就用到了 过滤节点中的节点。 下面让我们进入主题吧。业务场景是这样的,我们有一个智能温度计,放在我们的实验室里,它会每隔一段时间上传一次实验室的温度。但最近这个温
ThingsBoard教程(七):模拟设备遥测
前言 各位读者好,截止目前,ThingsBoard系列文章已经做了六篇,分别是 ThingsBoard教程(一):ThingBoard介绍及安装 ThingsBoard教程(二):租户,租户配置,部件组模块的使用 ThingsBoard教程(三):系统设置模块的使用 ThingsBoard教程(四):规则链简介与操作 ThingsBoard教程(五):客户,资产管理 ThingsBoard教程(六):设备管理 上一篇我们讲解了如何使用设备管理来对设备进行增删改查,和设备配置的一些基本概念,本篇文章就带大
给购买ThingsBoard专栏同学的一封信
本文是作者对自己的TB开发专栏的介绍,表示对读者的支持和感谢。他解释了为什么专栏更新速度较慢,主要是因为他并非专业的TB开发者或使用者,而是出于工作需要学习的。他还强调了专栏的价格非常公道,每篇文章不到1元钱,对于70篇文章来说是非常划算的。 作者还表示,如果读者在阅读过程中发现错别字,可以在文章底部评论指出,他会尽快修改。同时,如果读者对TB的其他方面有兴趣,也可以在文章底部留言,他会根据读者的需求进行更新。此外,作者还承诺会在有时间的情况下更新一些官方文档的解读,并新增一些小部件开发与规则链的使用的知
ThingsBoard教程(十九):规则节点概览介绍
在ThingsBoard的CE V2.5.6版本中,一共有这几种类型在每一种类都有包含了多个节点,每一种类型的节点都有不同的颜色表示本篇文章做一个简单的概括,后续的文章会详细讲解每一个种类的节点如何使用,每一个节点的使用。一共有10个,使用黄色表示 过滤器节点用于消息过滤和路由。一共有9个,使用绿色 属性节点用于更新传入消息的元数据。一共三个,使用蓝色 转换节点用于更改传入消息字段,如发起者、消息类型、有效负载和元数据。一共21个,使用红色标识 动作节点根据传入的消息执行各种动作。一共9个,使用黄色表示,
ThingsBoard教程(八):自定义UI
前言 各位读者好,截止目前,ThingsBoard系列文章已经做了七篇,分别是 ThingsBoard教程(一):ThingBoard介绍及安装 ThingsBoard教程(二):租户,租户配置,部件组模块的使用 ThingsBoard教程(三):系统设置模块的使用 ThingsBoard教程(四):规则链简介与操作 ThingsBoard教程(五):客户,资产管理 ThingsBoard教程(六):设备管理 ThingsBoard教程(七):模拟设备遥测 前面我们已经讲解了tb的基本模块以及用法,如何
ThingsBoard教程(二三):在规则链中计算二个设备的温度差
有这样一个需求,在室外有一个温度计,在室内有一个温度计,我们需要计算室内与室外的温度差。 如果你有类似的需求,请一定仔细把本文看完。首先创建一个资产,叫做Fizz Home。 然后创建两个设备, 室外温度计,室内温度计。并将两个设备与资产FizzHome 关联起来。我们需要创建资产与设备的关系,如下图 添加完成后 使用 节点来生成智能温度计的数据,在生成时需要绑定设备,需要设置消息数和周期。 安装上图来设置即可。配置完成后,将其链接到根节点,如下 根节点是这样子的 我们需要创建一个用于处理室内室外温度差
Error response from daemon: rpc error: code = FailedPrecondition
删除docker swarm下的节点报错: Error response from daemon: rpc error: code = FailedPrecondition desc = node y2qsyjdbfmm4tjwh4p9wqlmq1 is not down and can’t be removed 解决(需要把active状态的节点的docker服务关闭;同时在manager节点中修改掉该节点的AVAILABILITY状态): [vagrant@centos-node2 ~]$ sudo service docker stop Redirecting to /bin/syste
从零理解域随机化:通过Isaac Lab的events.py掌握Sim-to-Real关键技术
本文深入解析域随机化技术如何通过Isaac Lab的events.py实现Sim-to-Real迁移,提升机器人策略在真实世界的鲁棒性。从刚体属性到环境条件的系统级随机化,详细介绍了工程实践中的关键参数配置与调试技巧,帮助开发者有效缩小仿真与现实的差距。
STM32F407通过FSMC接口与LAN9252的EtherCAT从站移植实战
本文详细介绍了在STM32F407平台上,通过FSMC接口驱动LAN9252 EtherCAT从站控制器的完整移植实战。内容涵盖硬件连接、FSMC时序配置、官方SDK代码分析与关键修改、EtherCAT协议栈集成适配,以及实战调试与稳定性优化技巧,旨在帮助工程师解决工业通信中的核心挑战,实现稳定高效的实时控制网络接入。
手把手教你:基于STM32H7自制飞控,如何从零开始移植PX4固件(附避坑指南)
本文详细介绍了如何基于STM32H7自制飞控板并移植PX4固件的完整流程,包括硬件设计、开发环境搭建、关键配置文件移植、驱动开发与适配等关键步骤。特别针对PX4-AutoPilot的移植过程提供了实用技巧和避坑指南,帮助开发者高效完成飞控系统开发。
光学薄膜设计入门:Essential Macleod中文版从安装到实战全攻略
本文为光学薄膜设计初学者提供Essential Macleod软件从安装部署到实战应用的全流程中文指南。详细解析了软件核心界面、材料管理及工作流程,并通过一个完整的宽带增透膜设计实例,手把手演示膜系构建、优化与分析方法,帮助用户快速掌握这一业界标杆工具,跨越理论与实操的门槛。
Zabbix在Ubuntu 22.04上的性能优化与监控实战:从基础安装到高级配置
本文详细介绍了在Ubuntu 22.04系统上部署和优化Zabbix监控系统的完整流程,从基础安装到高级配置。内容包括MySQL数据库设置、Zabbix服务器与Web前端优化、性能调优策略以及实战监控场景应用,帮助用户构建高效的企业级监控解决方案。
VC Spyglass CDC实战:如何快速定位和解决重汇聚问题(附详细调试步骤)
本文深入探讨了在SoC设计中利用VC Spyglass进行CDC验证时,如何高效定位和解决棘手的重汇聚问题。通过实战演练,详细解析了重汇聚的本质、VC Spyglass的检测逻辑,并提供了从报告筛选、GUI原理图分析到制定设计修复或约束豁免方案的全套调试步骤,帮助工程师快速攻克这一常见验证难题。
PCL 基于视椎体裁剪点云
PCL 基于视椎体裁剪点云
廖雪峰Python教程[完整版]
廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白
深度学习工具包 DeepLearningToolbox
深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[](https://bitdeli.com/free "Bitdeli Badge")
大中型超市收银系统(可直接运行)
光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开
老版QQ原生表情gif动态
这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。
订阅专栏 解锁全文
1073



:RPC部件的使用&spm=1001.2101.3001.12003&articleId=119649292&d=1&t=3&u=65056376e8ed499b83349114c680a3d7)

被折叠的 条评论
为什么被折叠?



