分享

来自斯坦福的廉价机器狗.上

 云深无际 2021-11-03

一个廉价的机械狗:

狗机器人的大脑是一台 Raspberry Pi 4 计算机,它接收来自无线 PS4 控制器的命令并控制伺服电机,每条腿三个,将脚和身体移动到正确的位置。

https://github.com/stanfordroboticsclub/StanfordQuadruped
git@github.com:stanfordroboticsclub/StanfordQuadruped.git
https://stanfordstudentrobotics.org/pupper
https://pupper.readthedocs.io/en/latest/

L同学说,写文章把参考链接放到尾部可以增加一定程度的专业性,不过我是习惯文章写到哪里就将参考的来源附上,不过接下来可以考虑放尾部。

先对文章的主角先睹为快

3D打印的痕迹很明显

主要的动力源是舵机

金属舵机力量大

要安装的机械腿

装配图

4个舵机安装好的样子

控制的核心是pi 4

放置好的样子

因为要控制引脚,所以焊接一个引出使用的插脚


我们对这个东西的硬件构建,至少对我来说是不感兴趣的,我就看如阿健实现

这个是项目的所有源码,看见外面的run_robot没有,这个文件会赋予机器人活力,一会儿精力多放于此

可以看下下里面包含的函数

当你烧录好一个树莓派的系统,把刚刚克隆的文件全复制进去

就是这些东西,替换

用ssh链接树莓派:

ssh pi@10.0.0.10

raspberry

账号和密码,记得IPV4改成手动模式,IP地址是自己写的

然后你要确认一下自己的读写模式是什么

https://www.raspberrypi.org/documentation/configuration/wireless/wireless-cli.md
https://linux.die.net/man/5/wpa_supplicant.conf

ssh链接时一回事,我们需要安排pi在开机的时候就链接我们的wifi,以上的链接时参考的地址。

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
network={ ssid="testing" psk="testingPassword"}

最新的系统需要在文件的最上面加一些文件才可以:

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdevupdate_config=1country=<Insert 2 letter ISO 3166-1 country code here>

如果你有很多的WiFi,可以这样写:

etwork={ ssid="SchoolNetworkSSID" psk="passwordSchool" id_str="school"}
network={ ssid="HomeNetworkSSID" psk="passwordHome" id_str="home"}

当然也不排除,同时有WiFi的情况,可以指定一下优先级:

network={ ssid="HomeOneSSID" psk="passwordOne" priority=1 id_str="homeOne"}
network={ ssid="HomeTwoSSID" psk="passwordTwo" priority=2 id_str="homeTwo"}

关于这个应用软件的更多信息可以看这里

sudo ./install_packages.sh

http://math-atlas.sourceforge.net/

好像是个线性代数的库

https://pypi.org/project/transforms3d/

http://abyz.me.uk/rpi/pigpio/

pi的gpio库,c实现,被包装了py的接口

可以这样安装:

rm master.zipsudo rm -rf pigpio-masterwget https://github.com/joan2937/pigpio/archive/master.zipunzip master.zipcd pigpio-mastermakesudo make install

测试一下:

sudo ./x_pigpio # check C I/Fsudo pigpiod # 开启守护进程./x_pigpiod_if2 # check C I/F to daemon./x_pigpio.py # check Python I/F to daemon./x_pigs # check pigs I/F to daemon./x_pipe # check pipe I/F to daemon
https://github.com/fivdi/pigpio

具体的GitHub的库在这里,我们后面使用的时候再看

在安装的脚本里面看到了这个,我们去看看

https://github.com/stanfordroboticsclub/PupperCommand

在这里

一段shell的安装脚本

安装了一个字体

然后就是安装了py的库,用ps的手柄控制,后面是加了一个守护线程???不是线程,是自动启动。中间看不懂了,一会儿看shell。

https://pypi.org/project/ds4drv/

这个是手柄的库

这个是封装的命令

主要的脚本就是这些

大致就是安装软件,向系统注册一些服务


电脑没电了,下篇文章见

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多