当前位置:首页 > 新型工业化 >如何选择电机控制和linux驱动开发系统(如何选择电机控制和linux驱动开发器)

如何选择电机控制和linux驱动开发系统(如何选择电机控制和linux驱动开发器)

电机控制和Linux驱动开发哪个方向更好?

先说结论:任何领域就像世界上的五行一样,阴阳结合、虚实结合、利弊结合。至于哪一种更好,我们不能一概而论。最重要的是弄清楚哪一个更适合你?

如何选择电机控制和linux驱动开发系统(如何选择电机控制和linux驱动开发器)

1. 共鸣

当我看到这个问题的时候,确实是我早年面临的一个选择。我忍不住回答一下,一来是为了表达自己的观点,二来是为了在网络上发光,影响和帮助更多的人。

2. 洞察力

要知道电机控制和Linux驱动开发哪个方向更好,首先要知道这两个方向主要是做什么的!

我相信,对这个问题有疑问的大多数人都站在岔路口,不知道两个方向的具体情况。

2.1 电机控制的主要作用是什么?

电机控制就是控制电机!那么需要什么技术来控制电机呢?

电机类型及特点:电机有多种类型,如直流电机和交流电机;分为有刷、无刷、单相、三相等。您必须熟悉各类电机的基本知识。

控制算法:如果要控制电机,最重要的是控制算法。你必须会PID,你必须了解三环控制理论,你必须熟悉很多理论推导,你必须有基本的数学基础!

控制策略:需要了解各种控制策略,如矢量变换控制、直接扭矩控制、直接功率控制、无传感器控制、自适应控制等,这还涉及到物理知识和信号处理知识。 ETC。

驱动代码实现:这部分在整个电机控制中并不是那么重要。它基本上实现了基于算法的C控制代码,常用于DSP开发。

电机控制方向的工作一般需要较高的理论知识、控制算法等,而且学习起来并不容易。但相对而言,门槛高的竞争会更小。

以上是一个粗略的清单。如有错误,请指出。

2.2 Linux驱动开发的主要目的是什么?

Linux驱动开发主要分为两个方面:Linux总线驱动开发和Linux外设驱动开发。

2.2.1 Linux总线驱动

这部分主要是芯片原厂需要做的事情。芯片流片后,如果需要支持Linux系统,则需要实现Kernel总线驱动。这部分主要包括

各类子系统开发:IIC子系统、SPI子系统、MMC子系统、CLK子系统、GPIO子系统、Pinctrl子系统、中断子系统等。

BringUp工作:这部分是实现芯片从上电到uboot-kernel-rootfs的完整启动方案,供客户使用。

文档撰写:为了提供芯片给客户使用,需要一些SPEC和开发指南等文章。

从事Linux总线驱动开发,由于技术的迭代,底层驱动的实现一般不会有太大的变化,大部分都是维护工作和支持工作。

2.2.2 Linux外设驱动

这部分和我们经常使用STM32做的开发工作几乎是一样的。更专注于Sensor开发和周边开发。

各类传感器开发:如MPU6050、激光传感器、摄像头传感器等。

各种外设开发:如PWM控制、WiFi和BT开发、显示开发、音频开发等。

从事Linux外设驱动开发,主要面向产品。公司每次迭代产品,都需要保持外围功能的稳定性,这个过程可能相当复杂。

三、总结

以上只是粗略的列出,肯定会有一些错误。

以我为例

我从事电机控制工作。当时我在一家世界500强公司工作。整体加班强度不高,整体工作还不错。

不过我感觉电机控制毕竟不是大学专业研究的领域,它涉及物理、信号处理、电机控制理论等知识。我消化起来比较慢,所以果断转向Linux驱动开发方向。到目前为止还不错。

我只想说明一点:每个方向的好坏都不是非黑即白的。重要的是看什么适合你!

编辑:黄飞

最新资讯

推荐资讯