草庐IT

超好用的软件示波器,PID调参、智能车、平衡车开发很方便

文章目录yPlot介绍特点:使用帮助1软件页面说明📌鼠标操作2如何连接下位机(开发板)3通信协议说明3.1下位机(开发板)向软件发送波形的协议3.2上位机向下位机发送指令的协议4STM32示例程序4.1波形发送4.2接收代码4.3波形生成函数4如何二次开发yPlot介绍这款软件可以将串口接受到的数据以波形的方式显示,方便查看数据和调试参数。在电赛等一些场合用来调试PID参数非常方便。在刚开始参加比赛的时候做无人机,全靠肉眼调参,然后一遍又一遍的修改参数,编译程序,下载程序。效率低而且慢。后来了解到有软件示波器,用过匿名的,用过山外调试助手,但是他们看波形还行,在线修改参数不方便。后来又了解到一

位置式Pid和增量式Pid的定义及应用

PID算法是一个典型的闭环控制系统。P、I、D,比例、积分、微分。开环:输入量对输出量没有反馈作用;闭环:输入量对输出量有反馈作用。位置式Pid位置式Pid就是位置闭环控制,位置闭环控制就是根据编码器的脉冲累加,测量电机的位置信息,并与目标值进行比较得到一个控制偏差,然后我们对偏差进行比例积分、微分的控制,使偏差趋近于0的一个过程。这是一个位置式pid的在stm32里的一个代码框架:定义一个pid的函数,入口参数是编码器的位置测量值v和位置控制的目标值v1,返回值是一个pwm波。我们通过位置式pid得到的返回值应该是一个具体的绝对的数值--pwm。最后要把pwm赋值给相应的函数,例如电机驱动等

python - 在 python 中通过进程名称获取 PID 的跨平台方法

主机上正在运行多个同名进程。使用python或jython按名称获取这些进程的PID的跨平台方法是什么?我想要类似pidof但在python中的东西。(反正我没有pidof。)我无法解析/proc,因为它可能不可用(在HP-UX上)。我不想运行os.popen('ps')并解析输出,因为我认为它很难看(不同操作系统中的字段顺序可能不同)。目标平台是Solaris、HP-UX等。 最佳答案 您可以使用适用于Windows和UNIX的psutil(https://github.com/giampaolo/psutil):importps

python - 在 python 中通过进程名称获取 PID 的跨平台方法

主机上正在运行多个同名进程。使用python或jython按名称获取这些进程的PID的跨平台方法是什么?我想要类似pidof但在python中的东西。(反正我没有pidof。)我无法解析/proc,因为它可能不可用(在HP-UX上)。我不想运行os.popen('ps')并解析输出,因为我认为它很难看(不同操作系统中的字段顺序可能不同)。目标平台是Solaris、HP-UX等。 最佳答案 您可以使用适用于Windows和UNIX的psutil(https://github.com/giampaolo/psutil):importps

java - 尝试访问USB设备时libusb_open_device_with_vid_pid失败

我正在尝试使USB设备连接到Android5.1.1设备。以前,我一直使用KitKat的常规libusb,但Lollipop增强了安全性,因此不再有效。这是有据可查的,需要root设置SELinux级别。我不需要root设备来使USB设备连接到它。环顾四周后,我遇到了thisanswer并尝试了thislibusbfork,但是现在我遇到了一个新错误libusb_open_device_with_vid_pid(29c2)failed.FailedtosetupUSBusb_setup:-1我没有更改任何代码,只有库。这仍然是权限问题,还是我缺少某些东西可以使这项工作正常进行?

java - 尝试访问USB设备时libusb_open_device_with_vid_pid失败

我正在尝试使USB设备连接到Android5.1.1设备。以前,我一直使用KitKat的常规libusb,但Lollipop增强了安全性,因此不再有效。这是有据可查的,需要root设置SELinux级别。我不需要root设备来使USB设备连接到它。环顾四周后,我遇到了thisanswer并尝试了thislibusbfork,但是现在我遇到了一个新错误libusb_open_device_with_vid_pid(29c2)failed.FailedtosetupUSBusb_setup:-1我没有更改任何代码,只有库。这仍然是权限问题,还是我缺少某些东西可以使这项工作正常进行?

几种常用的PID控制方式(入门推荐)

        笔者最近做比赛,就顺便研究了一下几种常用的PID控制方法,首先我会对PID控制系统做一个简要的说明和自我理解,以方便刚入门的小白快速的理解和使用,不涉及深入的原理以及公式,如有错误,烦请指出,(大佬务笑)后面我会给出PID的初始化以及控制算法的源码,方便大家使用。需要的直接cv复制就可以了。1、什么是PID?P比例(proportional)I积分(integral)D微分(derivative)曾经,在我们非计算机控制领域流传着这样一张图 emmmm.....说的确实也没错,在控制领域中不得不说,PID真的是万能的,而且调起来更多的是体力活,费脑子的很少。。。。像笔者这种懒人

java - 如何找到在 java 中启动的进程的进程 ID (pid)?

这个问题在这里已经有了答案:HowtogetPIDofprocessI'vejuststartedwithinjavaprogram?(18个回答)关闭9年前。如果我通过Runtime.getRuntime().exec(...)或ProcessBuilder.start()在Java中得到一个进程对象,我可以等待它通过Process.waitFor(),类似于Thread.join(),或者我可以用Process.destroy()杀死它,这就像已弃用的Thread.stop().但是:如何找到进程对象的pid?我在TheOfficialDocumentation中没有看到这样做的方

java - 如何找到在 java 中启动的进程的进程 ID (pid)?

这个问题在这里已经有了答案:HowtogetPIDofprocessI'vejuststartedwithinjavaprogram?(18个回答)关闭9年前。如果我通过Runtime.getRuntime().exec(...)或ProcessBuilder.start()在Java中得到一个进程对象,我可以等待它通过Process.waitFor(),类似于Thread.join(),或者我可以用Process.destroy()杀死它,这就像已弃用的Thread.stop().但是:如何找到进程对象的pid?我在TheOfficialDocumentation中没有看到这样做的方

使用Arduino实现PID加速减速控制

PID控制是一种常见的控制算法,可以通过调整比例、积分和微分常数来实现目标输出值的控制。PID控制广泛应用于自动化控制领域,例如温度控制、速度控制等。本篇博客将介绍如何使用Arduino实现一个简单的PID加速减速控制。准备工作在开始实现之前,需要准备以下硬件和软件:硬件:一块Arduino控制板一个电机一个速度传感器软件:ArduinoIDE适当的电机驱动库实现过程下面将介绍如何使用Arduino实现PID加速减速控制。具体步骤如下:设置变量和常数首先,需要设置一些变量和常数来进行PID计算,包括:setpoint:目标速度input:当前速度output:输出速度Kp:比例常数Ki:积分常