马鞍山做公司网站的,绵阳阡陌网站建设,做电商需要多少本钱,wordpress m3u8播放器【 声明#xff1a;版权所有#xff0c;欢迎转载#xff0c;请勿用于商业用途。 联系信箱#xff1a;feixiaoxing 163.com】 目前人工智能非常火#xff0c;但是人工智能需要极高的算力和海量的数据#xff0c;因此相关的关联公司非常吃香#xff0c;nvidia就是提供算力…【 声明版权所有欢迎转载请勿用于商业用途。 联系信箱feixiaoxing 163.com】 目前人工智能非常火但是人工智能需要极高的算力和海量的数据因此相关的关联公司非常吃香nvidia就是提供算力的一家公司。大家都知道nvidia的游戏显卡非常厉害但是大家不了解的是nvidia的嵌入式开发板jetson系列也非常不错。至少从性能上说jetson系列的开发板还是非常不错的n个大核arm cpu还有不少的gpu资源。 不过要说jetson开发板的缺点无非就是这么三个第一发热比较大第二价格比较贵第三产品供应存在风险。客户如果追求性能并且是小批量使用对成本不太敏感的话个人还是非常推荐jetson系列开发板。和树莓派4b相比nvidia的gpu资源就是最大的杀手锏。这次我们以jetson Xavier nx做一个介绍。 1、价格 一般来说nano的价格会比较便宜一点其他类型的板子一般都在几千元上下。目前手上的这个nx开发板当时的购买价格应该是5000左右。这还不是最贵的如果是orin系列的开发板价格甚至会到上万元。所以这方面大家根据自己的经济能力灵活进行选择。 2、系统镜像 从电商网站上面购买到的jetson开发板一般系统镜像都是安装好的。此外还会额外带一个ssd存储所以系统软件这方面不需要我们担心。 3、创建用户、配置静态ip 拿到板子之后插好电源、插好键盘和鼠标、接好hdmi、上电之后第一步要做的事情就是创建第一个用户。比如说我们第一个创建的用户是lidar密码也是lidar。 此外对于我个人而言不太习惯用屏幕进行系统操作所以这个时候还会配置一个静态ip。一般的做法就是直接找到eth0通过鼠标选择manual设置ip的方式把ip设置为192.168.0.97即可。后期我们如果需要访问jetson直接和它配置在同一个网段用网线和pc直连用ssh登录就可以访问。 默认jetson里面的系统软件已经开启了ssh服务。 4、下载软件 本身nx是同时支持wifi和有线网口的。这边为了方便就直接通过有线网口直接插入到路由器端口了。当然也需要把路由器配置在192.168.0.*网段。我们的pc也连到这个路由器上面后续通过ssh登录到jetson用apt install就可以下载需要的软件了。 当然喜欢使用wifi的朋友可以用nmcli配置一下也是可以的
sudo nmcli dev wifi list
sudo nmcli dev wifi connect NETGEAR86 password 88888888 ifname wlan0
sudo nmcli dev dis wlan05、默认安装的软件 jetson本质上已经和一台pc没什么区别了里面默认安装了gcc、g、make和gdb等工具我们要做的就是使用好这些工具。 6、资料的上传和下载 在jetson系统里面sftp服务已经开启了。这个时候我们只需要找一个支持sftp协议的客户端就可以实现资料的上传、下达了。比如说mobaxterm就支持sftp协议。 7、支持opencv 前面我们已经配置好了网络环境所以如果需要进行opencv开发比较简单直接输入下面这行命令就可以了
sudo apt-get install libopencv-dev 8、安装pcl库 pcl全称point cloud library也就是点云库。本身安装pcl库依赖于几百个第三方库如果pcl都可以安装了那代表整个系统、软件库和编译环境就基本ok了。安装方法和opencv差不多直接输入下面这个命令就可以了
sudo apt-get install libpcl-dev 9、网站开发 个人写网站比较喜欢用python去处理框架使用webpy。所以直接输入这个命令即可
sudo apt-get install python3-webpy 10、pyqt5开发 有的时候我们需要开发qt界面程序。这种情况下用c来开发又显得有点笨重。所以为了偷懒我们可以通过pyqt5来完成对应界面的开发。因为之前安装libpcl-dev的时候pyqt5已经安装好了所以可以编写一个demo.py用python3.6 demo.py执行一下即可。在mobaxterm上面对应的窗口是可以显示的。 11、docker安装 开机启动后我们通过ifconfig看到了docker0的ip信息这说明docker已经安装好了。
lidarlidar-desktop:~/Desktop$ ifconfig
docker0: flags4099UP,BROADCAST,MULTICAST mtu 1500inet 172.17.0.1 netmask 255.255.0.0 broadcast 172.17.255.255ether 02:42:51:c1:79:b5 txqueuelen 0 (Ethernet)RX packets 0 bytes 0 (0.0 B)RX errors 0 dropped 0 overruns 0 frame 0TX packets 0 bytes 0 (0.0 B)TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 既然有了docker那么可以验证和测试一下相关功能比如运行hello-world、或者运行ubuntu
sudo docker run hello-world
sudo docker run -it ubuntu bash12、安装ros1 安装ros1的方法目前我们是利用docker来完成的这主要也是为了防止不同ubuntu版本之间的差异。因为现在ros版本和ubuntu的版本都是一一对应的。所以这里可以找一个kinetic版本测试验证一下如果没有问题的话就可以进行ros1的开发了。
sudo docker pull ros:kinetic-robot
sudo docker run -it --rm ros:kinetic-robot /bin/bash13、编写驱动代码hello.ko 首先我们准备hello.c文件
#include linux/init.h
#include linux/sched.h
#include linux/module.hMODULE_LICENSE(GPL);
MODULE_AUTHOR(feixiaoxing);
MODULE_DESCRIPTION(This is just a hello module!\n);static int __init hello_init(void)
{printk(KERN_EMERG hello, init\n);return 0;
}static void __exit hello_exit(void)
{printk(KERN_EMERG hello, exit\n);
}module_init(hello_init);
module_exit(hello_exit); 接着我们准备Makefile文件
ifneq ($(KERNELRELEASE),)
obj-m : hello.oelse
PWD : $(shell pwd)
KVER : $(shell uname -r)
KDIR : /lib/modules/$(KVER)/build
all:$(MAKE) -C $(KDIR) M$(PWD) modules
clean:rm -rf .*.cmd *.o *.mod.c *.ko .tmp_versions
endif 直接输入make不出意外的话可以生成ko文件。接着就可以通过sudo insmod hello.ko和sudo rmmod hello的方法分别添加和删除驱动。为了验证驱动是否添加、删除成功可以通过sudo dmesg的方法进行确认。 14、总结 因为写这篇文章的原因发现现在jetson系列性能又更强了。不过算力要求不是特别严苛的话个人觉得nano版本就够了价格在2500上下算力20t这还是可以接受的。比纯硬件能力更重要的是通过软件把开发板的性能发挥出来这比什么都重要。