pi4j
文章平均质量分 64
讲解pi4j的具体用法
订阅专栏赠送dht11传感器,并提供一次免费指导。有其他传感器的需求可付费咨询
优惠券已抵扣
余额抵扣
还需支付
¥99.90
¥299.90
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
水上冰石
系统架构师
展开
-
树莓派3b+结合 tb6600用pi4j2程序库,用java编写控制软pmw的方式控制步进电机的转速,详细解析
具体的连接方式请参考 :《java控制步进电机-控制电机的转动速度-CSDN博客。原创 2024-06-21 11:05:52 · 104 阅读 · 0 评论 -
TB6600结合树莓派的pmw针脚实现对步进电机的速度设定,例如1s 2圈,使用pi4j2编写
TB6600是一个流行的步进电机驱动器,它通常使用脉冲(PUL)输入来控制步进电机的步进,方向(DIR)输入来控制旋转方向。要通过树莓派控制TB6600以实现特定的速度(例如1秒钟2圈),你需要生成适当频率的PWM脉冲。但请注意,TB6600本身不是通过PWM调节速度的,而是通过脉冲频率来控制,每个脉冲代表一个步进。假设你的步进电机是1.8度每步(即每转200步)。为了在1秒钟内完成2圈,你需要每秒发送400个脉冲(200步/圈 * 2圈/秒 = 400步/秒)。原创 2024-06-14 21:59:14 · 123 阅读 · 0 评论 -
TB6600结合树莓派如何控制加速到某个速度值,使用pi4j2编写
要将步进电机的速度设置为等效于人类平均步行速度,你需要做一些换算,这涉及到步进电机的步距角度、齿轮或皮带传动系统的减速比(如果有的话),以及步进电机所驱动的机械系统的具体参数。5. **换算为步进电机的速度**:现在你可以根据电机转一圈所需的步数和轮子的周长,换算出步进电机需要以多少步每秒或RPM来运行,以达到相当于人类平均步行速度的线速度。3. **计算步进电机的转速**:根据步进电机的步距角(例如,1.8度/步),你可以计算出步进电机每转一圈所需的步数。例如,360度除以1.8度/步得到200步/转。原创 2024-06-14 21:35:48 · 208 阅读 · 0 评论 -
tb6600连接树莓派的 时候,共阳接地法和共阴接地法
在进行接线之前,需要确保TB6600和树莓派之间电气特性的兼容性,例如电压水平。无论哪种方法,关键是确保信号的正确传递和树莓派GPIO引脚的安全。在共阳配置下,树莓派GPIO引脚的低电平状态导致驱动器的对应端口接到正电源,形成高电平信号,相反则是低电平信号。这种配置下,树莓派GPIO引脚的高电平状态会导致驱动器的对应端口接地,形成低电平信号,反过来则是高电平信号。图示:左侧相当于树莓派,右侧相当于tb6600.只有确定好接地法之后,才能在后续正确进行针脚的控制。原创 2024-06-12 19:05:50 · 134 阅读 · 0 评论 -
树莓派【Raspberry Pi-64位】3b+,Pi4J 2.0入门
前面的文章讲解了树莓派在centos7 arm64版本下的使用,用一款智能小车为例子,做了代码实践。由于centos7不再维护,且Pi4J 1.x版本也因为WiringPi 的局限,Pi4J从1.x升级为2.x.所以本专栏的技术栈也将进行调整A.从centos7系统回到Raspberry Pi-64位系统。B.Pi4J版本从1.2升级为2.1.0Pi4J版本1.x和 2.x版本实际上并不兼容,2.x版本不再依赖WiringPi,而是转向使用PIGPIO库。原创 2024-06-08 18:52:05 · 155 阅读 · 0 评论 -
java11纳秒时间的局限性
java11中有System.nanoTime();方法,可以获取到系统执行的纳秒级别的时间。这个是可以查询到程序执行的具体的纳秒时间的,这个是没有问题的。但是,当我们想根据纳秒粒度的时间进行精确控制的时候,却是不行的。例如,我想控制在10纳秒内的停顿,是无法做到的,因为10纳秒太短了,一个java语句可能执行时间就已经超过10纳秒了,上下两句语句之间的执行时间差都会超过100纳秒。因此,java11看起来有纳秒时间粒度,但是仍然无法直接通过针脚控制某些传感器的读取,例如温湿度传感器,因为这原创 2022-05-19 09:58:48 · 341 阅读 · 0 评论 -
树莓派4b安装wiringpi2.6 arm64版本
采用自己编译的方式:git clone https://github.com/WiringPi/WiringPi.gitcd ~/wiringPi./build在看 gpio -v是2.6了,wiringpi2.6 可以支持pi4j 1.4版本,并且jdk支持1.9以上。在功能上,由于jdk1.8版本不支持微妙级别的操作,1.9支持纳秒级别的数据处理(硬件时钟周期ok的情况下),而要对温度湿度传感器例如DHT11读取的时候,需要进行微妙级别的总线控制,所以要用java控制温度湿度传.原创 2021-06-26 12:36:09 · 1946 阅读 · 0 评论 -
pi4j针脚模拟总线,进行控制传输和数据传输的几种思路
我们知道Java语言可以进行毫秒级的延迟,但当我们需要进行串口线进行控制传输,数据传输时,需要进行微秒级别的延迟,这怎么控制呢?原创 2021-06-06 21:01:42 · 338 阅读 · 0 评论 -
pi4j gpio针脚上拉电阻,下拉电阻概念
在树莓派针脚中,一个数据针脚的常见的状态有输入IN和输出OUT,软pwm等状态,总共所有的状态:DIGITAL_INPUT(0, "input", PinDirection.IN),DIGITAL_OUTPUT(1, "output", PinDirection.OUT),PWM_OUTPUT(2, "pwm_output", PinDirection.OUT),GPIO_CLOCK(3, "gpio_clock", PinDirection.OUT),SOFT_PWM_OUTPUT(4, "原创 2021-05-21 21:13:09 · 1018 阅读 · 0 评论 -
树莓派通过java获取麦克风声音并播放
试验目标:1.在树莓派上,安装麦克风2.提供一个java springboot的项目,打包好以后,放到树莓派中,运行,项目提供出restful风格的接口,对麦克风的录制与暂停进行控制。3.实时播放麦克风的声音。这样做,是为了后面对声音进行识别控制做好基础。定义与范围划分:1.载体:小车底盘,轮子等非电子类物品统称为载体。2.控制中心:树莓派称为控制中心3.电子部件: 麦克风4.软件部...原创 2021-04-23 20:37:17 · 1049 阅读 · 0 评论 -
pi4j的新版本
虽然pi4j新拆分出了2.0版本,作为支持树莓派4b并且摒弃wirpi作为底层支撑,但是2版本并没有得到太大的发展,而且由于无法用于生产环境而陷入停滞更新。反而1版本的新的小版本1.4版本,也开始支持树莓派4b,arm64位。同时,和2版本的架构调整有些类似,将树莓派的自称单独拆分,橙派,小熊派等也开始分别形成独立的项目进行维护。延续1版本的架构,仍然以wirpi作为底层支撑,只不过依赖于新版本的wirpi,即可以支持arm64的树莓派4b,8g版本的wirpi2.5.1.4版本的pi4j除了上原创 2021-03-14 22:42:28 · 583 阅读 · 2 评论 -
树莓派通过java控制麦克纳姆轮小车
试验目标: 我们这次试验的主要目的是,通过java程序,编写spring boot的接口,提供restful风格的接口,通过网页按钮触发或者接口调用的方式,进行对小车进行远程控制。能进行控制小车的前进,后退,直接左向运动,直接右方向运动。定义与范围划分: 1.载体:小车底盘,轮子等非电子类物品统称为载体。 2.控制中心:树莓派称为控制中心 3.电子部件: 42步进电机,TB6600电机驱动,电源线称为电子设备,驱动成为芯片, 4.软件部分:ja...原创 2020-12-15 21:17:01 · 1373 阅读 · 4 评论 -
java控制步进电机-控制电机的转动速度
java控制步进电机-控制电机旋转方向讲过java如何通过树莓派,控制TB6600进而控制42步进电机的方向。这一篇主要讲,如何控制电机的速度。连线与上一篇相同,但需要修改一个参数:SW1,SW2,SW3分别选择ON,ON,OFF.来选择频率为200,分频为1.import com.pi4j.io.gpio.*;import com.pi4j.wiringpi.SoftPwm;/** * 四相42步进电机驱动-速度控制阿 * * @description: * @author: j.原创 2020-11-16 10:34:18 · 933 阅读 · 0 评论 -
java控制步进电机-控制电机旋转方向
java控制步进电机讲过java如何通过树莓派,控制TB6600进而控制42步进电机的启停。这一篇主要讲,如何控制电机的转向。连线与上一篇相同,如果上一篇已经操作过,那么可以直接跳到程序部分。import com.pi4j.io.gpio.*;import com.pi4j.util.CommandArgumentParser;import com.pi4j.wiringpi.SoftPwm;import java.sql.Date;import java.sql.Timestamp;.原创 2020-11-13 11:02:34 · 879 阅读 · 0 评论 -
java控制步进电机
树莓派通过脉冲宽度调制可以控制电机的速度。实际上在精度要求不是非常高的情况下,普通引脚也可以通过软件模拟来控制电机,实现pwm一样的功能。pwm功能可以控制直流电机的速度,同时,也可以控制步进电机的步数。一.准备树莓派4b电机驱动TB660042步进电机电源盒(4节1.5v电池)电源线若干二.电路连接示意图https://shumeipai.nxez.com/raspberry-pi-pins-version-40TB6600这个是TB6600的外观,已经外壳原创 2020-09-03 17:32:28 · 947 阅读 · 0 评论 -
java通过pwm方式控制电机-L298N
我们知道树莓派提供一个硬件pwm引脚,可以通过脉冲宽度调制进行控制电机的速度。实际上在精度要求不是非常高的情况下,普通引脚也可以通过软件模拟来控制电机,实现pwm一样的功能。一.准备树莓派4b电机驱动L298N直流电机电源盒(4节1.5v电池)二.电路连接示意图使用方式如下:https://shumeipai.nxez.com/raspberry-pi-pins-version-40L298N示意图详细的针脚其中,IN1,IN2控制电机A,..原创 2020-08-26 17:07:46 · 917 阅读 · 1 评论 -
树莓派-usb接口数据方法(java读取usb接口数据,通用)
如果一个外设连接到树莓派上,如何通过java获取usb接口设备数据呢?我们这里就讲解一个封装jar包usb4java官网地址:http://usb4java.org/pom文件:<-- For using just usb4java without javax-usb --><dependencies> <dependency> <groupId>org.usb4java</groupId> <art...原创 2020-07-31 15:43:55 · 2103 阅读 · 0 评论 -
树莓派4b-【centos】操作系统安装包
针对树莓派4b操作系统,需要安装不同于2,3系列的安装包。centos操作系统也一样,需要使用和3b,3b+不同的安装包。附件分享一个操作系统可用的4b的操作系统下载地址:一.链接:https://pan.baidu.com/s/1zeTyMqfjykX9AVbvKz60oQ提取码:gh8g二.sd卡格式化,需要使用SDCardFormatterv5_WinEN;三...原创 2020-03-16 15:24:09 · 3819 阅读 · 3 评论 -
树莓派[centos]Java开发-pi4j-包讲解-工具包,当前包,wiringpi操作包,温度包
版本:Parent POM 1.2 API本章主要讲解pi4j下的com.pi4j.temperature 、com.pi4j.util 、com.pi4j.wiringpi、com.pi4j.concurrent 四个包com.pi4j.jni // 提供了本地方法库的相关的映射方法。包括针脚模拟量,串行中断事件相关的监视器,事件监听...原创 2020-02-17 23:35:05 · 1220 阅读 · 1 评论 -
树莓派[centos]Java开发-pi4j-包讲解-底层相关
版本:Parent POM 1.2 API本文主要讲解底层相关的几个包。com.pi4j.jni com.pi4j.platform com.pi4j.system com.pi4j.system.impl其他包讲解待续com.pi4j.jni // 提供了本地方法库的相关的...原创 2020-01-29 20:48:22 · 1329 阅读 · 1 评论 -
树莓派3b+ [centos]api-简单gpio针脚控制
/* * #%L * ********************************************************************** * ORGANIZATION : Pi4J * PROJECT : Pi4J :: Java Examples * FILENAME : ControlGpioExample.java * ...原创 2020-01-16 22:37:08 · 1050 阅读 · 1 评论