二、树莓派( Raspberry)机械臂配置telnet服务

 本文档主要介绍python如何控制树莓派机械臂的操作,其中涉及到主要五个方面的问题。

①树莓派wifi模式的搭建

wifi模式下vnc连接的ip查询

③修改piroot两个账号和密码

④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

 

posted on 2021-04-26 10:36  软饭攻城狮  阅读(924)  评论(2编辑  收藏  举报

导航