Answers:
您在问两件事。1)是否有特定于机器人的操作系统,以及2)是否可以在R-Pi上进行硬件级控制而不会弄乱操作系统。这是一种错误的二分法,因为操作系统是一种好处,而不是成本,除非您对处理能力有严格的限制。
微控制器(Arduino)设计用于处理时间紧迫的事物,通常只处理一两个时间紧迫的事物。它们非常适合转动车轮等。在进行高级计划时,高级语言/库非常有帮助。就像多线程应用程序等一样,这就是您的OS所在的地方。没有有关您的项目的更多详细信息,我无法帮助您确定最合适的是Arduino还是R-Pi。
回答1:是的,只是四处搜索。
要回答2:是的,可以使用硬件接口IO来编写API。但是您将需要(想要)这样的东西:
您->操作系统->微控制器->硬件。
看到这个极好的答案
根据您的问题,您可能会对微控制器的RTOS感兴趣。FreeRTOS是非常受欢迎的一种,显然已移植到Raspberry Pi。
您可以使用简化的Linux(无需X-Windowing和其他机器人可能不需要的图形实用程序)。Raspian-Lite就是这样一种操作系统。
然后,有许多机器人框架将在Raspberry Pi上运行。它们在Linux OS下运行。
ROS(机器人操作系统)是最受欢迎的框架之一,但学习起来也最复杂。正如彼得·帕克(Peter Parker)所学:强大的力量带来了卓越的学习曲线。:)
ROS用C ++编写,但可以用多种语言(包括Java和Python)进行访问。
Gobot。这是用Go语言编写的框架。它具有框架了解的许多传感器和板。您可以将主要智能设备放在大型计算机上,并在机器人上使用具有无线连接的较小板。Gobot有姐妹项目(Artoo-使用Ruby,Cylon.js-使用JavaScript)。
Go是Google创建的一种类似C的语言,非常易于使用。我将其视为C的BASIC(对于C而言,Go就像对Fortran一样,对于C而言)。它编译非常快。
我正在考虑启动Gobot的Rust端口(Rust是另一种类似于Go的类似C的语言,但它被设计为尽可能类型安全的。Rust编译器捕获了C / C ++的许多常见指针错误。