二、树莓派( Raspberry)机械臂配置telnet服务
本文档主要介绍python如何控制树莓派机械臂的操作,其中涉及到主要五个方面的问题。
①树莓派wifi模式的搭建
②wifi模式下vnc连接的ip查询
③修改pi,root两个账号和密码
④telnet服务开启
⑤树莓派静态IP的配置。
一、树莓派wifi模式搭建
树莓派wifi模式的搭建的目的是为了让树莓派连接上外部无线网。树莓派本身并没有配置telnet服务,所以外部设备想通过telnet与树莓派是没法连接的。所以需要搭建wifi模式。
1.1 手机开启热点
如热点的账号是(HWWH, HWWH)
1.2 树莓派修改启动方式为wifi模式
cd /boot/ // 进入boot目录下ls // 可以看到hiwonder_wifi_conf.py文件
sudo vim hiwonder_wifi_conf.py // 进入hiwonder_wifi_conf.py,修改内容,修改成如下代码,保存即可。
原始内容如下:
修改之后的内容如下:
sudo reboot //重新启动树莓派主板。wifi模式开启
二、wifi模式下vnc连接的ip查询
设置wifi模式过后,手机开启热点,账号密码(HWWH, HWWH)。此时电脑连接此wifi,手动重启树莓派,等树莓派原本闪烁的灯保持常亮的时候,树莓派的wifi连接成功。
此时,需要使用vnc连接树莓派,因为电脑连接的wifi账号已经改了,所有树莓派的默认连接ip已经被修改了。
查询修改后的ip方法如下:
1、cmd中查询当前电脑的的所有 arp -a
2、安装 ipscan22.exe软件,安装包如图所示
3、打开安装之后的位置,输入查询到的电脑ip地址192.168.43.1 - 后面的 IP地址第三组数字修改成您电脑IP地址里面对应的那个数值。比如我这里电脑IP地址第三组数字为43,就将第二个红框内的第三组数字也改为43,其他不需要更改。
4、点击扫描,就可以看到树莓派的ip地址
此时,通过vnc就可以连接ip192.169.43.31进而连接树莓派机械臂。
三、修改pi,root两个账号的密码
树莓派默认的用户名:pi,默认密码:raspberry,可以根据需求修改pi的密码。也可以不修改。
修改root密码,因为root账号和密码的权限很大,对于后面的操作需要用到,root账号的默认密码不清楚
2.1 修改pi账号密码
sudo passwd pi
2.2 修改root账号密码
sudo passwd root
四、telnet服务开启
telnet服务的作用是为了外设与树莓派之间交互。外设通过python来控制树莓派的操作
3.1 安装telnet服务
sudo apt-get update // 更新安装源 sudo apt-get install openbsd-inetd // 安裝openbsd-inetd,有的树莓派不需要安装也可以,具体什么作用不清楚 sudo apt-get install xinetd telnet // 安装telnet包 sudo apt-get install xinetd telnetd // 开启telnet的守护进程 su root // 切换用户 xxxxxxx // 输入密码 vim /etc/inetd.conf // 编辑文件,输入下面内容telnet stream tcp nowait telnetd /usr/sbin/tcpd /usr/sbin/in.telnetd
vim /etc/xinetd.conf // 编辑文件,修改为下面内容defaults{ # Please note that you need a log_type line to be able to use log_on_success # and log_on_failure. The default is the following : # log_type = SYSLOG daemon info instances = 60 log_type = SYSLOG authpriv log_on_success = HOST PID log_on_failure = HOST cps = 25 30 }sudo /etc/init.d/xinetd restart // 重启开启守护进程
检查telnet的运行状态 netstat -a | grep telnet
输出:tcp 0 0 *:telnet *:* LISTEN ---说明telnet已经开启
3.2 python编写telnet服务代码连接树莓派(pi, xxxxxx)
tnlnet = telnetlib.Telnet(url) print tn.set_debuglevel(2) tnlnet.read_until(b"login:") tnlnet.write('pi'.encode('ascii') + b"\n") #输入账号 tnlnet.read_until(b'Password:') tnlnet.write('xxxxxx'.encode('ascii') + b"\n") # 输入密码 tnlnet.read_until(b'~$') tnlnet.write('python3 init.py'.encode('ascii') + b"\n") tnlnet.read_until(b"#") tnlnet.write(b"exit\n")
五、树莓派静态IP配置
树莓派配置静态ip的目的是因为树莓派网线插入交换机的时候,每次当树莓派重启以后,我们给树莓派网口配置的ip就会消失,需要重新配置。所以设置静态ip以后,树莓派就不要每次重新配置。
sudo vim /etc/dhcpcd.conf
在内容最下面输入下面内容
interface eth0 static ip_address=192.100.100.99 static router=192.100.1.1
sudo reboot
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· dotnet 源代码生成器分析器入门
· ASP.NET Core 模型验证消息的本地化新姿势
· 对象命名为何需要避免'-er'和'-or'后缀
· SQL Server如何跟踪自动统计信息更新?
· AI与.NET技术实操系列:使用Catalyst进行自然语言处理
· 官方的 MCP C# SDK:csharp-sdk
· 一款 .NET 开源、功能强大的远程连接管理工具,支持 RDP、VNC、SSH 等多种主流协议!
· 提示词工程师自白:我如何用一个技巧解放自己的生产力
· 一文搞懂MCP协议与Function Call的区别
· 如何不购买域名在云服务器上搭建HTTPS服务