zoukankan      html  css  js  c++  java
  • 第6次实践作业

    对树莓派的认识

    (1)说明你此前对于树莓派的认识程度,是闻所未闻还是只听其名不知其用途,亦或是已经了解熟悉

    (2)查找相关资料,写下你认为的树莓派可以用来做什么,如果你有需要打算用它来做什么

    余廷龙

    • 我的高中同桌挺喜欢玩硬件的,之前听他说起过树莓派,我对树莓派的理解就是一个微型的计算机,专门用于学习计算机软硬件知识的实验设备,可以实现普通PC机所有的功能。但是并没有实际接触过。
    • 树莓派虽小,但五脏俱全和普通电脑无异。电脑能做的大部分事情,在树莓派上都能做,而树莓派以其低能耗、移动便携性、GPIO等特性,很多在普通电脑上难以做好的事情,用树莓派却是很适合的。我在这个链接查找到了相当多的树莓派的用途,确实让人感到非常惊讶,小小的树莓派竟然可以玩出这么多花样,比如可以用来配置成无线路由器、搭建服务器、搭建hadoop大数据分析平台等等。
      但是我最希望做的是能用它来做酸奶,为什么这么说呢?因为我之前在b站看到北大的陈斌老师分享了Python编程制作酸奶的视频,我觉得非常有意思,他用的是micro:bit开发板,我觉得用树莓派肯定也行。制作酸奶最重要的就是控制恒温42度,如果不想买专门的能控制温度的机器,就可以使用micro:bit编程实现对温度的控制。这个是b站视频链接


    郑裕恒

    • 第一次听到树莓派的时候我联想到了学校的数媒专业,认识一个数媒专业的学生,得知他们以树莓自称,所以我当时以为这是数媒专业的同学做内建活动的时候喜欢吃的派
    • 树莓派可以做很多电脑上能做到事情,有良好的移动便捷性,往小的说想做一个闹钟,往大了说可以整一个机器人和hadoop集群啥的,很酷

    刘晓翔

    • 只听其名不知其用途,听很多人说起过,但从没实际见过也没操作过
    • 就像其他任何一台运行Linux 系统的台式计算机或者便携式计算机那样,利用树莓派可以做很多事情
      例如个人网站、BT下载机、AirPlay服务、单双休闹钟、Git服务器、搭建 hadoop 集群等等
      如果有需要我打算用用树莓派建立家庭媒体中心,可以躺在沙发上通过大屏幕电视上在线看优酷、搜狐等网站视频,可以放移动硬盘中的高清电影,还可以分享手机上的媒体

    系统烧录和备份

    (1)系统烧录
    先去官网下载所需镜像 官网地址

    使用如下命令校验压缩包的SHA-256值

    Get-FileHash .2020-02-13-raspbian-buster-full.zip | Format-List
    

    使用Win32磁盘映像工具进行系统烧录

    烧录完成后可以看到boot分区

    (2)系统备份
    先将树莓派关机,等待黄灯不闪,将SD卡取下,插入自己的计算机,在计算机上新建一个backup.img文件,打开Win32磁盘映像工具点击读取就可以获得备份。

    访问树莓派

    (1)SSH访问
    使用这种方式需要保证计算机和树莓派在同一个局域网下。
    首先准备好配置文件
    一个名为ssh的空文件
    一个名为wpa_supplicant.conf的配置文件,内容如下

    country=CN
    ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
    update_config=1
    
    network={
    	ssid="此处填写wifi名"
    	psk="此处填写wifi密码"
    	priority=1
    }
    network={
    	ssid="此处填写wifi名"
    	psk="此处填写wifi密码"
    	priority=2(数字越大优先级越高)
    }
    

    将上述两个配置文件放到SD卡根目录下

    将SD卡放回树莓派,开机,开启手机热点

    下载安卓命令行,参考链接,在手机上查看到树莓派的ip地址为192.168.43.152,然后在windows终端使用如下命令就可以访问树莓派了

    ssh pi@192.168.43.152 #默认密码为raspberry
    


    (2)VNC远程登录
    参考博客
    在ssh访问成功的基础上,进入配置界面。

    sudo raspi-config
    
    

    开启VNC远程桌面服务,选择5-Interfacing Options,P3-VNC配置vnc服务

    设置显示参数


    重启系统

    下载并打开vnc viewer,输入ip地址,账号pi,密码raspberry即可登录到树莓派远程桌面


    换源

    sudo nano /etc/apt/sources.list
    

    把原来的内容注释掉,加上以下内容。

    deb https://mirrors.aliyun.com/raspbian/raspbian/ buster main non-free contrib
    deb-src https://mirrors.aliyun.com/raspbian/raspbian/ buster main non-free contrib
    
    

    更新

    sudo apt-get update
    sudo apt-get upgrade
    
    


    接入摄像头

    (1)摄像头模块安装

    进入配置界面,选择Interfacing Options

    sudo raspi-config
    


    选择Camera 

    摄像头启动成功

    在桌面拍摄一张照片,并可以指定拍摄分辨率

    raspistill -o Desktop/image.jpg
    


    在桌面录一段4s的视频

    raspivid -o Desktop/video.h264
    

    (2)使用命令控制摄像头

    • Python代码实现五连拍
    from picamera import PiCamera
    from time import sleep
    
    camera = PiCamera()
    # Rotate by 180 degrees when the camera is upside-down
    camera.rotation = 180 
    
    camera.start_preview(alpha=200)  # Make the camera preview see-through by setting an alpha level from 0 to 255
    
    sleep(5)
    # Take a picture and save as /home/pi/Desktop/image.jpg' 
    camera.capture('/home/pi/Desktop/image.jpg')
    
    # Take 5 pictures every 5 seconds and save as /home/pi/Desktop/image0.jpg' ... image4.jpg
    for i in range(5):
        sleep(5)
        camera.capture('/home/pi/Desktop/image%s.jpg' % i)
    
    camera.stop_preview()
    

    • Python代码实现拍摄不同亮度和对比度的照片
    from picamera import PiCamera, Color
    from time import sleep
    
    camera = PiCamera()
    camera.rotation = 180 
    camera.resolution = (1024, 768)
    camera.framerate = 15
    
    camera.start_preview()
    camera.brightness = 70
    camera.annotate_background = Color('blue')
    camera.annotate_foreground = Color('yellow')
    camera.annotate_text = "Hello world!"
    camera.annotate_text_size = 30
    sleep(5)
    camera.capture('/home/pi/Desktop/pic.jpg')
    camera.stop_preview()
    
    camera.start_preview()
    for i in range(5):
        camera.annotate_text = "Brightness: %s" % i
        camera.brightness = i*20
        sleep(0.1)
        camera.capture('/home/pi/Desktop/brightness%s.jpg' % i)
    camera.stop_preview()
    
    camera.start_preview()
    for i in range(5):
        camera.annotate_text = "Contrast: %s" % i
        camera.contrast = i*20
        sleep(0.1)
        camera.capture('/home/pi/Desktop/contrast%s.jpg' % i)
    camera.stop_preview()
    

    (3)基于vlc的Raspberry Pi摄像头实时监控

    Windows端也需要安装VLC Downloads

    安装VLC之前可以先进行换源

    # 编辑 `/etc/apt/sources.list` 文件,删除原文件所有内容,用以下内容取代:
    deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib rpi
    deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib rpi
    
    # 编辑 `/etc/apt/sources.list.d/raspi.list` 文件,删除原文件所有内容,用以下内容取代:
    deb http://mirrors.tuna.tsinghua.edu.cn/raspberrypi/ buster main ui
    

    获得root权限后安装并开启VLC服务

    sudo apt-get update && apt-get upgrade
    
    sudo apt-get install vlc
    
    sudo raspivid -o - -t 0 -w 640 -h 360 -fps 25|cvlc -vvv stream:///dev/stdin --sout '#standard{access=http,mux=ts,dst=:8090}' :demux=h264
    


    开启vlc,在windows上也打开vlc,输入url

    成功监听,但延迟超大

    遇到的问题&&解决方法&&小组成员名单&&在线协作证明

    (1)遇到的问题和解决方法

    问题1:
    在windows终端无法通过ssh访问树莓派

    解决:
    原因是计算机和树莓派没有在同一个局域网,让计算机也连上手机的热点就可以了

    (2)小组成员名单

    学号 姓名
    031702441 余廷龙
    031702424 郑裕恒
    031702433 刘晓翔

    (3)在线协作证明

    协同解决问题

    QQ屏幕分享

  • 相关阅读:
    DDD:管理“工作单元实例”的两种模式
    DDD:DDD+CQRS+高伸缩性的分布式架构
    ExtJS4.2:快捷键支持(没有你想象的那么简单)
    DDD:用 “四色原型” 进行 “职责分配”
    .NET:处理数据库事务中的并发
    Javascript:必须知道的Javascript知识点之“单线程事件驱动”
    技术交流:20130413线下交流总结,不再做苦逼的程序员
    Javascript:必须知道的Javascript知识点之“原型链”
    DDD:主键映射,你一直在使用的企业应用模式
    设计原则:重复的方式以及如何消除重复
  • 原文地址:https://www.cnblogs.com/lxx1999/p/12940964.html
Copyright © 2011-2022 走看看