- 博客(22)
- 资源 (8)
- 收藏
- 关注
原创 STM32发送MQTT请求到Onenet
前文已经阐述了从MQTTX的客户端发送 信息到OneNet。下面就用STM32代替MQTTX的客户端 发送信息到OneNet。
2025-06-05 20:37:55
42
原创 MQTTX连接移动云的例子
得到devicekey:MW5pSmQwZUxWSTI2WE9nNThLV3E4S1d0TlJnMXU3xxxxxx(后面的xxx为省略的内容)0hGGE%2B2Fu3M2vGqOMK0rd982xxxx(后面的xxx为省略的内容)因为在阿里的MQTT中签名参数计算的密码 与Onenet的计算方式不一样。"time": 1685856000000 // 毫秒级时间戳(可选)在它的网站上,有一个专门的工具来计算password。在这里把 阿里的MQTT签名工具列出来。根据工具来计算得到的key。
2025-06-05 20:03:36
84
原创 MQTTX连接阿里云的物联网配置
本文的目标是通过MQTTX的客户端,连接到阿里云的物联网的平台,发送温度信息,在阿里云的平台中显示出来。阿里云免费注册,免费有一个MQTT的服务器。有数量限制,但是对于测试来讲,已经足够。
2025-06-03 17:44:09
585
原创 (手把手)在华为云、阿里云搭建自己的物联网MQTT消息服务器,免费IOT平台
本文介绍如何在阿里云搭建自己的物联网MQTT消息服务器,并使用 “MQTT客户端调试工具”模拟MQTT设备,接入平台进行消息收发。,该软件是一款免安装的绿色软件,一款非常好用的物联网MQTT消息服务器Broker, 支持标准MQTT协议的设备接入。在本地电脑启动“MQTT客户端调试工具”软件,在主界面输入服务器外网地址、端口、设备ID,点击“连接”按钮,如下图。2.启动“MQTT服务助手”软件,在主界面己经自动识别本机IP(不是外网IP),点击“开启服务”按钮,如下图。一.物联网MQTT服务助手下载。
2025-06-03 13:56:08
413
原创 大疆无人机的二次开发
OSDK开发包:它是一个全面的工具集合,允许开发者在无人机搭载的计算平台上运行自定义代码,实现对无人机更深度的控制和数据处理。集成了飞行控制、传感器数据获取、视觉定位等功能,借助UDP协议进行通讯,确保命令传输低延迟且可靠。开发者能够通过它获取飞控中的各种数据,按相应逻辑编写相关代码,进行相应的计算处理,生成控制指令从而控制无人机执行相应的飞行动作或飞行任务,适用于开发自动化能力较强的或需要负载硬件扩展的应用。云API。
2025-06-03 13:46:56
768
原创 MQTT的Thingsboards的使用
前端采用ThingsBoard凭借其优秀的性能和高效的性能得到了广大开发者的认可,但基于Angular的前端不符合中国的用户习惯, 本项目为基于Vue3开发的 ThingsBoard 前台。将这个语句 放入到deepseek中,询问转为MQTTx的连接方式,如何进行配置。在远程的dashboard上,数据立项被修改为28度。这个开源项目,采用vue3,感觉fork的量还比较大。在远程网络端,出现active的连接在线状态。点击设备之后,发现数据已经传入到远程系统中。进入到远程网页之后,
2025-05-30 14:56:40
994
原创 软硬件协同设计技术
因为软硬件协同设计中软件和硬件是同步开发的,在进行软件部分开发的时候,其面向或依托的硬件系统并没有开发完成,因此只能通过模拟仿真的方式进行系统调试,而且,一旦硬件部分设计有修改,可能需要软件部分做出相应的改动(与此对应,软件部分设计的调整也有可能需要硬件部分做出必要的改动)。虽然从逻辑功能上讲,软件与硬件是等价的,但是对于一个确定的系统而言,某项功能使用软件实现还是硬件实现,在速度、功耗等方面的性能差异很大,需要结合系统参数需求进行合理的功能划分,以满足系统要求。嵌入式系统中的接口包括接口软件和接口硬件。
2025-05-14 14:05:01
678
原创 JPA 保存实体的时候,按照类的属性顺序来进行保存
有时候,需要从Excel中读入数据,然后保存到数据库中。读入的时候,Excel是根据单元格定位,如果列太多,那么到数据库中,读入之后,如果顺序被打乱,对应的时候,不好对应。需要在创建表的时候,根据类的属性的顺序来进行创建。方法一:原来在Hibernate5.x 的解决方案JPA/Hibernate默认使用TreeMap存储属性导致按字母排序,而非实体类声明顺序。
2025-04-26 09:45:12
297
原创 SPL使用的Tips
访问spl的默认数据库,采用idea的方式来进行访问,不需要密码。=A2.select(len(合同编号)>1)复制到idea的工程目录下,然后就可以进行访问。对每个字段,统计它的最大,最小,中位数等。
2025-04-24 13:59:42
172
原创 SPL的结果写入到一个新的表中
SPL继承JDBC接口,但是向Tableau这样的工具,它不支持连接SPL。所以SPL的计算结果,需要保存到一个新的新的库,新的表中。传入一个表名,然后执行到一个目标的库中。后续可以考虑,采用独立的函数来封装一下。其中,第三种,是最简单的。
2025-04-23 21:40:34
96
原创 SPL自定义插件
3、 实现基类中的抽象方法public Object calculate(Context ctx),在此方法中进行函数参数、选项的解析,完成函数应有的功能,返回函数的计算结果。第1部分的值为0或1,0表示是普通函数,1表示是某对象的成员函数,例如字符串对象的函数s.len(),逗号后面的是自定义函数的完整Java类名。新建包的同名目录,即形成C:\Program Files\raqsoft\esProc\classes\com\self 这个目录,将PowerSum.class文件复制到该目录下。
2025-04-18 18:56:20
467
原创 SPL集算器开源代码结构
char getType() 返回参数节点的类型,即分隔符的类型,有3种:IParam.Semicolon(分号)、IParam.Comma(逗号)、IParam.Colon(冒号)。a1)的参数节点类型是分号,f(p1,p2)的节点类型是逗号,f(p1:p2)的节点类型是冒号。整个程序的入口在SPL.java,在com.scudata.ide.spl包下,在开发环境下,右键运行就进入SPL的主界面。在spl运行的时候,一般都会使用mysql的连接,可以提前在编译的时候,加载mysql的依赖。
2025-04-18 18:52:27
596
原创 SPL报表集成方式
注:除基础包外,还有一些特定功能的 jar,比如要在集算器 JDBC 中读写 Microsoft Office 文件,则需要加入 poi*.jar、xmlbeans-x.x.x.jar 等。这是引入了集算器后报表应用的体系结构图,从图中可以看到,比传统报表应用结构中多了一个计算层:数据源的数据先经过计算层的计算,再传给呈现层去展现。复制后放置在帆软的报表应用类路径下,即 [帆软安装目录]\webapps\webroot\WEB-INF\classes。按照前面的处理方式,采用传入参数的方式来进行处理。
2025-04-17 08:05:59
753
原创 SPL Java代码的集成方式
要使用绘制图形功能,则需要加入 SVG 图形处理相关的 jar 包,包括 batik*.jar、js-1.0.jar、pdf-transcoder-1.0.jar、xalan-2.7.0.jar、xercesImpl-2.12.1.jar、xml-apis-xerces-2.7.1.jar、xml-apis-ext-2.5.0.jar。JAVA 调用带数据源的 SPL 语句之前,需要先在应用项目中添加对应的数据库驱动,然后在配置文件 raqsoftConfig.xml 中配置数据源信息。
2025-04-17 08:05:19
991
原创 SPL 表Join关联
需要说明的是,这里说的主键是指逻辑上的主键,也就是在表中取值唯一、可以用于唯一确定某条记录的字段(或字段组),不一定在数据库表上建立过主键。外键关联是指用一个表的非主键字段,去关联另一个表的主键,前者称为事实表,后者为维表。SPL中称为主键关联,主键关联是指用一个表的主键关联另一个表的主键或部分主键。注意:1对1的场景下,如果是2个主键一样,那么就是1对多的场景的特例。从这可以看出,划分的列,不一定是原始的列名,可能是一个包含列名的表达式。注意:1对1的场景下,如果有外键约束,那么就是多对1 的特例。
2025-04-17 08:04:35
858
原创 SPL 分组(四)
即集合分组之后,也是小的集合,不是Key,Value的结构。这种对位分组在日常统计中是很常见的,比如按地区、按部门统计,都可以事先把基准集合列出来,而且我们经常还要求结果集必须按基准集合的次序出现,等值分组就不能保证这个次序,还要再排序,而排序时还是要提供这个基准集合,因为原集合成员属性中没有这个信息。依次扫描整个序列,当分组键值和上一个成员的分组键相同时,则将该成员加入到当前的分组子集,如果分组键值发生变化了,则产生一个新的分组子集并加入当前成员,扫描完之后就得到一批分组子集,从而完成分组运算。
2025-04-17 08:04:01
981
原创 SPL 具体的使用方法(三)
一般采用的是就近原则,即如果没有指明 ~ 是哪个集合的,那缺省认为是内层遍历集合的,而外层遍历集合的当前成员则需要显式地指出其从属于哪个集合。计算交集的表达式就可以写成 A.select(B.count(~==A.~)>0),其中的 ~ 缺省表示 B 的当前成员,而另一个要显式地写成 A.~ 以示区分。比如计算 A,B 两个集合的交集,简单的算法就是遍历 A 的成员,看是不是在 B 集合中出现过(也是遍历),这就会涉及到两层的遍历。取几列,返回集合的集合:T.([CLIENT,AMOUNT])
2025-04-17 08:03:01
660
原创 SPL的理论(二)
特别地,没有离散性的支持,SQL 很难描述有序计算,有序计算是典型的离散和集合的结合物,成员的次序在集合中才有意义,这要求集合,有序计算时又要将每个成员与相邻成员区分开,会强调离散。需要注意的是,和数学上的无序集合不同,序列是成员是有序的,这会导致 A1&B1 和 B1&A1 并不一定相同,SPL 中的序列交、并运算不满足交换律。理论上讲, pselect 和 pselect@a 是两个无关的不同函数,但这两个函数非常像,都是针对序列的,参数也一样,完成的功能虽然不完全相同,但也很类似。
2025-04-17 08:02:28
704
原创 SPL在程序中的位置(一)
构建一个脚本编辑器,通过关联的方式来进行类之间导航,降低代码量,ORM的本质是Java代码,需要先编译再执行,一般都要停机才能部署,应对变化的业务逻辑时非常繁琐。Java有动态数据结构Map等,但是它的运算能力弱,并且不直观。SPL是基于Java的解释型语言,无须编译就能执行,脚本修改后立即生效,支持不停机的热切换,适合应对变化的业务逻辑。基于 Stream 又发展出了 Kotlin,它不再直接使用 Java 语言,这样不再受 Java 的局限,可以使用新的语法和符号,写出更简洁的 Lambda 表达式。
2025-04-17 08:00:46
272
原创 SpringBootMybatis与Spl的集成方式
spl的是采用jdbc的原始访问方式。当前java开发,很多情况下,采用mybatis或mybatisplus作为ORmapping。Mybatis是基于JDBC接口之上的应用层。SPL是继承JDBC接口的驱动层(同时用于计算),Mybatis对于jdbc调用的是完全解耦的。为了更好的说明SPL与SpringBoot的集成,举一个完整的例子来实现集成方案。业务实现的功能:在数据库中有一张表Employee,用户从浏览器发起请求,带有参数的查询请求,经过SpringBoot框架,调用Spl计算引擎。
2025-04-17 07:42:58
709
1 QlikView11forDevelopers.PDF
2019-12-09
QlikView for Developers Cookbook
2018-05-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人