问题描述:
第一次使用WireShark的时候找不到本地网卡。双击Adaper for loopback traffic capture启动之后有如图2的提示。
图1 图2 上网搜了N种解决办法,都不好使。如:
怀疑是WinPcap/Npcap 没有启动。在cmd下用管理员的身份运行 net start npf,结果还是报错。报错信息为服务名无效。 图3 又上网查了一下这个报错信息说明Winpcap/Npcap未安装才会导致这个错误。但我已经安装过了Npcap。无奈,在安装目录下找到Npcap,卸载重新安装。但还是用不了。但是在安装过程中windows系统给出了如下警告信息:
又上网搜素如何解决这个问题,方法有两种,但是都不好使。
第一种:win7系统 -> run 一下 gpedit.msc 命令 ->选择管理模版 ->选择系统 -> 双击驱动程序安装 -> 双击设备驱动程序的代码签名 -> 当Windows检测到一个没有数字签名的驱动文件时:选择 忽略。然而这种方法并没有解决问题。
第二种:关机重启 -> 重启的时候按F8 进入启动方式界面,选择禁用启动程序强制签名,重新安装,还是报错。同样进入启动方式界面后,选择调试模式启动后安装依然报错。
解决办法:
请原谅我意志不坚定,果断放弃了。然后卸载了Npcap,在网上找了Winpcap重新安装了。然后就能用了。
图5 可惜不能尝试Npcap的新功能了 知识总结:
1.使用WireShark进行抓包,必须同时安装相应的工具如Winpcap/Npcap(网络通讯的抓取) 、USBpcap(USB通讯的抓取)。如果相应的工具未安装或未启动,WireShark是无法使用的。
原本配置
keras==2.1.5
tensorflow-gpu==1.13.2
numpy==1.17.4
加载模型报错:AttributeError: ‘str‘ object has no attribute ‘decode‘”
错误改法: 按错误改源代码:把decode改为encode。这样的改法虽然可以训练了,但是没有用!!!
正确改法:把h5py降到2.10.0版本就行了!!!!
原因分析:安装keras自动给下载高版本h5py导致报错!!
一些小知识点 输出数组内容 a[1]=*(a+1)=*(1+a)=1[a] cout<<1[a];//也可以 堆的大小是没有限制的,而栈有,一般为8MB,因此不宜在线程中嵌套太深的函数或太大的局部变量。结构体变量占用的内存并不是各部分相加,而是必须是其中最大数据类型的整数倍,目的是为地址对齐,提高读写速度。C++中使用多态时,不要使用派生类给父类初始化,否则会导致对象切断。每个派生类都调用自己直接基类的构造函数,但最终派生类的构造函数负责调用虚基类的构造函数,可以不是直接基类!(一般每个类都由自己的构造函数构造,但虚基类由最终派生类负责构造)。所有虚基类都由最终派生类的构造函数初始化,如果创建了最终派生类对象,那么将忽略通过子对象的构造函数对虚基类的现有调用。友元函数可以访问类中所有数据!友元关系不可以传递。 顶层const:不可使用*p更改内容;底层const:不可改变p指向,但可以改变*p内容 静态成员函数不可以调用非静态成员函数,但可以调用构造函数; 在c++中,由于面向对象的思维,它与C语言中的作用有一些不同,有了类中静态成员的说法。静态成员不属于对象,而属于类。不创建对象也可调用。从代码形式上来说没有任何区别。普通类成员函数与静态成员函数的区别在于普通成员函数有一个隐藏的调用参数(this)指针。所以就是说静态成员函数没有对象也可调用。
对类的静态和非静态函数的不同的调用要求决定了它们在使用上的方便程度:
非静态成员函数要通过对象调用,所以要求首先建立一个对象;而静态成员函数可不建立对象就可以被使用。一般对象也可以调用静态成员函数;
另外,如果类的成员函数想作为回调函数来使用,一般情况下只能将它定义为静态成员才行。
decltype : 对出现过的数据推断类型,用于声明新变量 Decltype(preNum) newNum; 使用静态函数/静态变量的好处
1.限定作用域在本文件
2.不会与其他文件中的函数名称冲突 静态函数会被自动分配在一个一直使用的存储区,直到退出应用程序实例,避免了调用函数时压栈出栈,速度快很多。
关键字“static”,译成中文就是“静态的”,所以内部函数又称静态函数。但此处“static”的含义不是指存储方式,而是指对函数的作用域仅局限于本文件。 使用内部函数的好处是:不同的人编写不同的函数时,不用担心自己定义的函数,是否会与其它文件中的函数同名,因为同名也没有关系。
函数指针 :double (*fac)(int a,int b) : 相比函数多个括号用户空间和内核空间
32bitCPU可寻址4G线性空间,每个进程都有各自独立的4G逻辑地址,其中0-3G是用户态空间,3-4G是内核空间,不同进程相同的逻辑地址会映射到不同的物理地址中。其逻辑地址其划分为:3G用户空间和1G内核空间使用引用传参时,也可以触发多态,但不可以给基类取派生类的别名;
形参为基类引用,可以传递派生类实参;但反之不行;编译阶段分为编译是读取源程序(字符流),对之进行词法和语法的分析,将高级语言指令转换为功能等效的汇编代码;一个初始化的奇葩方法
判断小数相等
故障代码表(F板为例):
02:运行中门锁脱开(急停) 03:错位(超过45CM),撞到上限位开关时修正,即层楼置为最高层 04:错位(超过45CM),撞到下限位开关时修正,即层楼置为最底层05:电梯到站无法开门 06:关门关不上,蜂鸣器响 08:通讯中断 09:变频器出错,急停,变频器故障对应变频器故障代码表处理
10:错位(超过45CM),撞到上终端减速开关时修正
11:错位(超过45CM),撞到下终端减速开关时修正
12:错位(超过45CM),撞到上终端减速开关时修正 13:错位(超过45CM),撞到下终端减速开关时修正 15:变频器未输出运行信号到SM-01的JP2.10(X19) 16:变频器运行信号在上抱闸前无 17:参数错误 18:写层时层楼不符 20:平层开关动作不正确 22:电梯反向溜车 23:电梯超速急停 24:电梯失速急停 31:电梯溜车急停 32:安全回路断开急停
33:电机电源接触器保护,停止启动 34:抱闸接触器保护,停止启动 35:抱闸接触器保护,停止启动 36:电机电源接触器保护,停止启动 37:轿门锁继电器保护,停止启动 接触器损坏,不能正常吸合
38:抱闸开关故障 39:安全回路的触点保护 44:门区开关动作不正确 45:开门再平层继电器触点保护 49:在开门到位的状态下厅门锁与轿门锁不一致 50:厅门锁与厅门锁继电器检测不一致 51:门连续受阻超过3次 52:开门再平层超过10秒仍不平 53:控制调速器进线接触器信号与调速器进线接触器触点检测不一致
疑问:
要P1板的,应该还有好多没发出来吧,3FF代码是编码器故障,就是这个字母的代码没有呢?
001 正常运行停止 042 下端站 KSE 偏低 083 无 24 电源 619 速度参考值警告
002 MC (微处理机)异常 043 下端站 KSE 偏高 084 DMS 损坏 620 电机控制超时
003 停止时无 KSE 044 KSE 的距离较高 085 LM 通讯中断 621 UART 接受失败
让我们来 看一下以下的代码
int a=10;
int b=20;
int *p= &a;
*p=10;
p=&b;
*p=200;
p=&a;
int **pp=&p;
*pp=&a;
**pp=1000;
*pp=&b;
**pp=2000;
看到这样的代码是不是一脸的懵逼,现在让我们来看看他的每一句都是什么意思。
开始之前我们先了解一下指针和解引用。
指针(Pointer)是编程语言中的一个对象,利用地址,它的值直接指向(pointsto)存在电脑存储器中另一个地方的值。由于通过地址能找到所需的变量单元,可以说,地址指向该变量单元。当然这是官方语言,(通俗说;指针就是地址,可以通过它找到以它为地址的内存单元)
解引用 "*"的作用是引用指针指向的变量值,引用其实就是引用该变量的地址,“解"就是把该地址对应的东西解开,解出来,就像打开一个包裹一样,那就是该变量的值了,所以称为"解引用”。
接下来我们来看看每一句都是什么意思。
int *p= &a; //定义一个整型指针p 并且p指向了a的地址 (&取地址)
*p=10; //解引用, 即 给a赋值10;
p=&b; // p指向了 b的地址
*p=200; //解引用, 即 给b赋值200;
p=&a; // p指向了a的地址
int **pp=&p; // 定义一个整型的指针 pp 并且pp 指向了 p的地址
*pp=&a; // pp指向了p的地址 p指向了a的地址 即pp指向了a的地址
**pp=1000; //解引用,即给a赋值1000;
*pp=&b; // pp指向了p的地址 p指向了b的地址 即pp指向了b的地址
**pp=2000; //解引用, 即 给b赋值1000;
在linux中如何修改密码 当你还记得root密码
可以去使用root账号直接修改
在root权限下你无需知道原密码,root可以强制修改一般用户密码
操作为:
su root passwd user Changing password for user root. New password: Retype new password: passwd: Authentication token manipulation error 当你忘了root密码
方法一:1.重启系统使用 ↑ 和 ↓ 将选择行设置为第一行(背景高亮即为选中),按下键盘上的 e ,进入编辑模式
将光标一直移动到 LANG=en_US.UTF-8 后面,空格,再追加 init=/bin/sh 。这里特别注意,需要写在UTF-8后,保持在同一行,并注意空格。由于屏幕太小,会自动添加\换行,这个是正常的。
按下ctrl+x执行修改进入引导界面
挂载根目录
mount -o remount, rw / passwd root 如果想要看到自己的密码可以输入:echo redhat |passwd --stdin root(或者直接打passwd)
最后结果如图
退出操作界面之前记得更新系统信息(如果开了selinux)
命令是:touch /.authorelabel
最后重启系统
```c exec /sbin/init 或 exec /sbin/reboot 方法二:还是进入帮助界面
在initrd 前输入rd.break
ctrl+x
mount |grep sysroot //查看sysroot权限
共享数据的保护: 常引用:使所引用的形参不能被更新
void display(const double& a);常对象:在生存期内不能被更新,但必须被初始化
A const a(3,4);常成员函数:不能修改对象中数据成员,也不能调用类中没有被const 修饰的成员函数(常对象唯一的对外接口).如果声明了一个常对象,则该对象只能调用他的常函数!->可以用于对重载函数的区分;
void print();
void print() const;extern int a:使其他文件也能访问该变量
声明一个函数或定义函数时,冠以static的话,函数的作用域就被限制在了当前编译单元,当前编译单元内也必须包含函数的定义,也只在其编译单元可见,其他单元不能调用这个函数(每一个cpp 文件就是一个编译单元)。 运算符重载注意 单目运算符最好重载为成员函数,双目最好为友元函数。=、[]只能重载成员函数,<<、>>只能重载为友元函数。 程序内存分配方式以及它们的区别 内存分配大致上可以分成5块:
栈区(stack)。栈,就是那些由编译器在需要时分配,在不需
要的时候自动清除的变量的存储区。里面的变量通常是局部变量、函数参数等。(由编译器管理)堆区(heap)。一般由程序员分配、释放,若程序员不是放,程
序结束时可能由系统回收。注意,它与数据结构中的堆是两回事,分配方式类似于链表。全局区(静态区)(static)。全局变量和静态变量被分配到同
一块内存中。程序结束后由系统释放。常量存储区。常量字符串就是放在这里的,不允许修改,程序
结束后由系统释放。程序代码区。存放函数体的二进制代码。 全局变量与全局静态变量的区别 若程序由一个源文件构成时,全局变量与全局静态变量没有区别。若程序由多个源文件构成时,全局变量与全局静态变量不同:全局静态变量使得该变量成为定义该变量的源文件所独享,即:全局静态变量对组成该程序的其它源文件是无效的。具有外部链接的静态,可以在所有源文件里调用,除了本文件,其他文件可以通过extern的方式引用。
----静态变量只被所属源文件使用 new delete 与malloc free 的联系与区别 new delete和malloc free都是释放申请的堆上的空间,都是成对存在的,否则将会造成内存泄露或二次释放不同的是,new delete是C++中定义的操作符,new除了分配空间外,还会调用类的构造函数来完成初始化工作,delete除了释放空间外还会调用类的析构函数。而malloc和free是C语言中定义的函数。 explicit 函数声明时加上explicit可以阻止函数参数被隐式转换。
Class A { explicit A(int a); } Void main() { A a1=12; //不加explicit时会被隐式转换位 A a1=A(12);加了此时编译器会报错。 } 被声明为explicit的构造函数通常比non-explicit 函数更受欢迎。
mutable关键字 mutalbe的中文意思是“可变的,易变的”,跟constant(既C++中的const)是反义词。在C++中,mutable也是为了突破const的限制而设置的。被mutable修饰的变量(mutable只能由于修饰类的非静态数据成员),将永远处于可变的状态,即使在一个const函数中。
我们知道,假如类的成员函数不会改变对象的状态,那么这个成员函数一般会声明为const。但是,有些时候,我们需要在const的函数里面修改一些跟类状态无关的数据成员,那么这个数据成员就应该被mutalbe来修饰。(使用mutable修饰的数据成员可以被const成员函数修改)。
用const修饰函数的返回值 如果给以“指针传递”方式的函数返回值加const修饰,那么函数返回值(即指针)的内容不能被修改,该返回值只能被赋给加const修饰的同类型指针。例如函数
Const char * GetString(void); // 如下语句将出现编译错误: char*str = GetString(); // 正确的用法是 Const char *str =GetString(); 一般只在返回值为引用和指针时使用,返回其他值时没有这个必要。
Kernel Mode Setting (简体中文)XorgScreen capture#Wayland 翻译状态:本文是 Wayland 的 翻译。上次翻译日期:2020-08-08。如果英文版本有所 更改,则您可以帮助同步翻译。 Wayland 是一个用于 混成窗口管理器 与其客户端对话的协议,也是一个实现该协议的库。GNOME 和 KDE Plasma 等一些桌面环境支持 Wayland。它还有一个混成器实现参考叫做 Weston。Xwayland 则提供了一个兼容层,来让以前的 X11 应用程序能在 Wayland 中运行。 Contents 1 系统需求2 混成器(窗户管理器) 2.1 平铺式2.2 堆叠式2.3 其它类型 3 显示管理器4 图形库 4.1 GTK 34.2 Qt 54.3 Clutter4.4 SDL4.5 GLFW4.6 GLEW4.7 EFL4.8 winit 5 故障排除 5.1 颜色校正5.2 慢动作、图形显示故障和崩溃5.3 无法在 display: :0 打开 Electron 应用5.4 远程显示5.5 游戏、远程桌面和虚拟机窗口中的输入捕获问题 6 另请参阅 系统需求 目前 Wayland 只能在使用了 KMS 的系统上工作。Wayland 本身并不提供图形环境;为此还需要安装混成器(比如 Weston 或 Sway),或者内置混成器的桌面环境,比如 GNOME 或 KDE。 为了使 GPU 驱动程序和 Wayland 混成器兼容,它们必须支持相同的缓冲器 API(Buffer API)。现在主要有两种 API:GBM 和 EGLStreams.
喜欢大概就是:在我们俩对视的一瞬间,我突然就避开了你的视线,而当你走过去的时候,我却在你背后看了你好久。。。
---- 网易云热评
一、软件简介
新一代网络安全技术,通过为目标建立完整的资产数据库,实现快速的安全应急。
二、下载地址:https://gobies.org/
三、使用方法
1、资产扫描
自动探测当前网络空间存活的IP
2、端口扫描
涵盖近300个主流端口,并支持不同场景的端口分组,确保最高效地结果输出;
3、显示重扫说明扫描完毕,共存活IP14个,端口38个
4、协议识别
预置了超过200种协议识别引擎,覆盖常见网络协议,数据库协议,IoT协议,ICS协议等,通过非常轻量级地发包能够快速的分析出端口对应的协议信息
5、产品识别
预置了超过10万种规则识别引擎,针对硬件设备和软件业务系统进行自动化识别和分类,全面的分析出网络中存在的业务系统;
6、Web检测
支持web网站渗透时所需的重要信息:包含IP、端口、服务器、标题等;
7、漏洞扫描
预置了最具攻击效果的漏洞引擎,覆盖Weblogic,Tomcat等最严重漏洞;
8、网站截图
支持获取服务器上的网站截图,并可以在详情页看到更多截图。
9、代理扫描
通过socket5代理,快速进入内网,开启内网渗透。
注:支持Pcap及socket两种模式,请根据不同的场合动态切换。
pcap模式:支持协议识别和漏洞扫描,不支持端口扫描;
socket模式:支持端口扫描协议识别以及漏洞扫描,扫描速度慢。
10、域名扫描
自定解析域名到IP,并自动爬取子域名。包含AXFR检测,二级域名字典爆破,关联域名查询
11、深度测试
发现非标准端口或非标准应用系统资产,进行深入的应用识别。在实战场景中非常有效。
设置 -> 高级设置 -> 开启 “深度测试”
12、CS架构
远程服务,区分扫描模块及展示模块。
CS搭建:开启远端服务,然后配置服务端主机、端口、账户信息。
禁止非法,后果自负
欢迎关注公众号:web安全工具库
原文:https://blog.csdn.net/qq_44472134/article/details/104252693?ops_request_misc=&request_id=&biz_id=102&utm_term=%25E6%258A%25A2%25E8%25B4%25AD%25E7%25A7%2592%25E6%259D%2580%25E4%25B8%25AD%25E4%25B8%25BA%25E4%25BB%2580%25E4%25B9%2588%25E8%25BF%2590%25E7%2594%25A8redis&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-3-104252693.pc_search_result_no_baidu_js
文章目录 一、为什么要使用redis呢? 原因一、避免反复请求数据库造成效率低下原因二、需要在 秒杀,热点数据 和DB数据库之间 加入缓存中间件二、以下单线程仅指Redis负责存取这块的线程只有一个,而非Redis中只有一个进程三、讲一讲为什么Redis这么快? 3.1、采用了多路复用io阻塞机制3.2、数据结构简单,操作节省时间3.3.、是C语言编写的,运行在内存中,自然速度快采用单线程,使用底层模型不同四、Redis的常见问题 4.1、Redis为什么是单线程的?4.2、如果万一CPU成为你的Redis瓶颈了,或者,你就是不想让服务器其他核闲置,那怎么办?4.3、单线程可以处理高并发请求吗?4.4、我们使用单线程的方式是无法发挥多核CPU 性能,有什么办法发挥多核CPU的性能嘛?五、简述一下Redis值的五种类型六、有序集合的实现方式是哪种数据结构?七、请列举几个用得到Redis的常用使用场景? 7.1、缓存,7.2、排行榜,7.3、计算器/限速器,7.4、好友关系,7.5、简单消息队列,7.6、Session共享,7.7、一些频繁被访问的数据,八、简述Redis的数据淘汰机制九、Redis怎样防止异常数据不丢失? 9.1、RDB 持久化 (快照的形式,周期性的持久化)** 是Redis的默认持久化方法 适合冷备 9.1.1、RDB的配置方式9.1.2、RDB 優點9.1.3、RDB缺點9.1.4、RDB 保存過程9.2、AOF 持久化 (追加到AOF文件的末尾,最后以不同的频次保存到到磁盘)适合热备 9.2.1、AOF的设置方法:9.2.2、AOF的优点9.2.3、AOF 的缺点十、缓存常见问题及缓存穿透,缓存雪崩以及缓存击穿 的含义及原理 10.1、缓存更新方式10.2、数据不一致 产生的原因解决的办法10.3、缓存穿透:redis和数据库中都没有数据10.4、缓存击穿:就是一个很热门的数据,突然失效,大量请求到服务器数据库中10.5、缓存雪崩:大面积的缓存失效,打崩了DB10.6、 解决方法 缓存穿透:数据库和缓存中都没有缓存击穿: 单个key失效缓存雪崩: 所有缓存同时失效十一、过期时间设置常用操作: 11.1、过期时间设置11.2、键过期时间查看11.3、键过期判定11.4、 过期键的理论删除策略11.5、 Redis采用的过期键删除策略11.6、 AOF、RDB和复制功能对过期键的处理 (1)生成RDB文件:(2)载入RDB文件:(3)AOF文件写入:(4)AOF重写:(5)复制:十二、连接过程十三、主从链十四、分片十五、Redis是怎么持久化的?服务主从数据怎么交互的? 一、为什么要使用redis呢? 原因一、避免反复请求数据库造成效率低下 举个例子,假如系统中有2千万用户信息,用户信息基本固定,一旦录入很少变动,那么你每次加载所有用户信息时,如果都要请求数据库,数据库编译并执行你的查询语句,这样效率就会低下很多,针对这种信息不经常变动并且数据量。
较大的情况,通常做法,就是把他加入缓存,每次取数前先去判断,如果缓存不为空,那么就从缓存取值,如果为空,再去请求数据库,并将数据加入缓存,这样大大提高系统访问效率。
原因二、需要在 秒杀,热点数据 和DB数据库之间 加入缓存中间件 项目的DB遇到了瓶颈,特别是秒杀和热点数据这样的场景DB基本上就扛不住了,那就需要缓存中间件的加入了,目前市面上有的缓存中间件有 Redis 和 Memcached ,他们的优缺点
https://blog.csdn.net/qq_44472134/article/details/104416741
综合这些然后再结合我们项目特点,最后我们在技术选型的时候选谁。
二、以下单线程仅指Redis负责存取这块的线程只有一个,而非Redis中只有一个进程 我先给个我的结论,单线程的Redis在瓶颈是cpu的io时(这不是大多数应用的实际应用场景),确实速度会比多线程慢。但是,我们实际应用场景中很少会遇到瓶颈是CPU的io的情况,这时候单线程优势就凸显出来了。
实现很简单!性能又不会比多线程差,并且,单线程确实不用处理上下文的切换,cpu利用率会比多线程高,这时候采用单线程实现是一种很划算的做法。当然,如果你的宽带和内存牛逼到了使得你的io成为瓶颈,这时候也只能使用多线程了。
面试时考官让我挑一种自己熟悉的NoSQL数据库讲一讲,我当场就蒙了,我就用过sql server,mysql和Oracle这几种,这几种就算从名字看也知道是sql数据库嘛,绞尽脑汁,我福至心灵,答出,Redis!
先说说Redis是什么吧小老弟?
Redis嘛,就是一种运行速度很快,并发很强的跑在内存上的NoSql数据库,支持键到五种数据类型的映射,(string、list、set、zset、hash)
三、讲一讲为什么Redis这么快? 3.1、采用了多路复用io阻塞机制 3.2、数据结构简单,操作节省时间 3.3.、是C语言编写的,运行在内存中,自然速度快 采用单线程, 避免了不必要的上下文切换和竞争条件,安全;也不存在多进程或者多线程导致的切换而消耗 CPU,不用去考虑各种锁的问题,不存在加锁释放锁操作,没有因为可能出现死锁而导致的性能消耗;
使用底层模型不同 它们之间底层实现方式以及与客户端之间通信的应用协议不一样,Redis直接自己构建了VM 机制 ,因为一般的系统调用系统函数的话,会浪费一定的时间去移动和请求
四、Redis的常见问题 4.
牛喀学城车载77GHz毫米波雷达技术培训,欢迎致电或加微信:18917451722。
这一篇,我们主要学习下毫米波LFMCW雷达原理,下一篇,我们学习毫米波LFMCW雷达多目标配对与速度解模糊算法研究
1.1、引言
调频连续波雷达调制方式有多种,简单的如正弦波调制、三角波调制和锯齿波调制等,也有一些相对复杂的多种方式组合的调制方式[33H36]。经过多年的研宄与发展,目前常用的几种波形体制有三角波体制、锯齿波体制、频移键控()体制以及多频移键控(Multiple Frequency Shift Keying,MFSK)体制。不同的波形体制对应的信号处理方法也不同。三角波是由两个对称的线性调频连续波(Linear Frequency Modulated Continuous Wave,LFMCW)组成,分为上、下扫频,利用上、下扫频差拍信号频谱对称的性质,对距离和速度进行解耦,算法简单。锯齿波雷达由多个相同的线性调频连续波组成,通过二维快速傅里叶变换(Fast Fourier Transform,FFT)对距离和速度解耦合,算法复杂度高。三角波和锯齿波是目前毫米波车载雷达中常用的两种波形。频移键控连续波则由两个频率不同的恒频连续波组成,在单通道接收条件下,无法计算得到静止目标的距离。多频移键控雷达发射波形在频移键控连续波基础上,结合线性调频连续波的特点而产生,发射波形包含两个线性调制、互相交错上升的阶梯信号。该波形能够计算得到静止目标的距离,但由于利用到相位信息,在低信噪比情况下,距离精度不高。本章从基本的雷达方程着手,详细介绍这四种波形体制以及对应测距测速原理,并借助模糊函数工具着重对三角波和锯齿波雷达进行研宄及仿真。
1.2、雷达方程简介
连续波雷达通过发射天线向空间发射频率经过调制的电磁信号,信号在空间传播过程中遇到目标会反射回来,接收天线接收到目标反射回波,系统对目标反射回波进行相关的处理便可估计得到目标的距离、速度和方位角等参数,连续波雷达基本工作原理如图2-1所示:
探测目标并确定其坐标是雷达最基本的任务,因此作用距离是雷达最重要的性能指标之一。作用距离决定了雷达能在多远的距离上发现目标,它的大小不仅取决于雷达本身的性能,包括发射机、接收系统、收发天线等分机参数,同时还和目标的性质及环境因素有关,如目标散射截面积(Radar Cross-Section,RCS)、天气状况等。雷达方程是描述雷达探测能力的主要理论工具,本章以点目标模型为例对雷达方程进行推导。假设雷达发射功率为,雷达发射天线增益为,目标与雷达的距离为及,信号在自由空间均匀辐射,则在目标处的信号功率密度为:
发射信号遇到目标会被反射,反射信号功率的大小与功率密度和目标散射特性有关,用目标的散射截面积?来表征其散射特性。假设目标可以将接收到的信号功率无损的辐射出来,可得到目标散射功率为:
由式(2-6)可以看出,反射功率经过往返双倍的距离路程,所以接收到的目标回波功率,能量衰减非常大。雷达要能可靠地发现目标,必须满足接收的回波功率大于最小可检测信号功率,当,可得到雷达的最大作用距离:
雷达方程给出了作用距离和各参数间的定量关系,但未考虑系统的实际损耗以及环境因素,而且方程中的和是两个不可准确预定的量,因此它常用来作为一个估算的公式,考察雷达各参数对作用距离的影响程度。
2 月 21 日-23日,牛喀学城特邀来自德国海拉和奥迪公司的资深毫米波雷达专家刘博士深入介绍77G毫米波雷达的系统方案、软件架构、信号处理、硬件设计、波束形成、SAR成像、仿真测试标定、目标跟踪等开发和应用技术,以及第五代毫米波雷达的前沿技术,致力于帮助相关企业缩短市场投放时间,把握战略发展方向,帮助希望加入 ADAS 开发行业工程师提升职场竞争力。如您需要学习,可点击海报了解。 为响应防疫抗病毒号召,本课程支持线上远程学习,详情联系客服。 1.3、三角波线性调频连续波
1.3.1、三角波测距测速原理
当雷达与目标存在相对运动时,传统的大时宽带宽线性调频连续波雷达存在距离与速度耦合的问题,造成目标距离估计产生误差。对称三角波雷达发射对称的上、下扫频段线性调频信号,对每一扫频段,通过将发射信号与接收信号进行混频获得回波差拍信号,差拍信号包含目标的距离和径向速度信息,利用上、下扫频段差拍信号频谱对称的性质,得到目标的距离和速度参数。对称三角波雷达发射信号、回波信号及差拍信号时频关系如图2-2所示:
图2-2中,5和T分别为发射信号单个扫频段的扫频带宽和有效时宽。下面主要以上扫频段发射信号为例,分析差拍信号的表达式及其特性,提供目标参数估计的理论基础。三角波雷达上扫频段发射信号数学表达式为:
式(2_8)中,为发射信号幅度,为载波中心频率,为上扫频发射信号初相,为扫频斜率。
设在t=0时刻,雷达前方存在一个距离为r,以速度v(目标相对于雷达的径向速度,以接近雷达方向为正)匀速运动的目标,接收到的目标回波信号(忽略接收机噪声)数学表达式为:
式(2-9)中,与目标散射截面积和传播衰减有关,为t时刻目标与雷达间的距离引起的时延,c为电磁波在自由空间的传播速度,为信号反射产生的附加相移,为目标初始距离对应的时延。将进行混频和低通滤波,得到差拍信号:
的线性调频信号的时宽带宽积。虽然D较大,但是,因此回波差拍信号是一个时宽带宽积很小的线性调频信号,可近似为一单频信号,数学表达式如下:
由上、下扫频段回波差拍信号表达式可知,回波差拍信号中心频率均由两部分组成:一部分是由目标距离引起的信号时延产生的频率值;另一部分是由目标运动产生的多普勒频率值。通过谱估计方法(如FFT)估计得到上、下扫频段的回波差拍信号的频率,即可得到目标的距离和速度信息:
三角波雷达信号产生容易,对于单目标的情况,能够准确测出其速度与距离,但是对于多个运动目标的情况,简单的三角波雷达信号无法解决上、下扫频的多目标频率配对问题,存在多目标配对问题,容易出现虚假目标。
1.3.2、三角波模糊函数
模糊函数是雷达系统分析和综合的重要工具,它回答了发射什么样的波形、在采用最优信号处理的条件下系统具有什么样的分辨力、模糊度、测量精度和杂波抑制能力。三角波信号模糊函数在一些文献中都有详细介绍,为简化推导过程,本节采用复包络法进行单周期模糊函数推导。假设对称三角波LFMCM发射信号上扫频段时间为(-T,0],下扫频段时间为(0,T],发射信号数学表达式如下:
式(2-23)中,:表示两个目标距离差产生的时延,表示两个目标的多普勒频率差值。由于一般毫米波LFMCW雷达系统具有大时宽带宽积,必须考虑多普勒效应对复包络函数的影响,数学表达式如下:
定义,为归一化相对时延,代表两个目标的距离差占据的距离单元数;为归一化相对多普勒频率,代表T时间内相对多普勒频率振荡周期数;为相对带宽。将代入式(2-25),得到时的模糊函数为:
假设三角波雷达载波频率,扫频带宽 B=200MHz,扫频周期T=lms,对称三角波单周期模糊函数如图2-3所示:
如图2-3所示,对称三角波模糊函数关于,平面上原点以及直线,对称,能量主要分布在直线,及其附近区域,且能量分布是连续的。
同样,根据式(2-29)可得到归一化相对时延分辨率,则距离分辨率为:
将模糊函数图沿时延轴进行切割,模糊函数波形如图2-5所示:
1.3.3、仿真与分析
系统仿真参数如表2-1所示:
假设雷达前方存在一个目标,距离为50m,相对速度为20m/s,信噪比为10dB,对目标回波差拍信号进行1024点加窗FFT,仿真结果如图2-6所示:
如图2-6所示,上、下扫频段目标回波差拍信号频谱中各出现一个峰值,频率分别为,根据式(2-20)和式(2-21)计算目标距离为49.98m,速度为20.16m/s。
1.4、锯齿波线性调频连续波
1.41、锯齿波测距测速原理
锯齿波雷达也是利用差拍信号估计目标的距离和速度参数,但是由于是单扫频信号且存在距离和速度耦合的问题,不能像三角波线性调频连续波一样仅通过一维傅里叶变换得到目标的距离和速度。锯齿波LFMCW雷达发射信号时频图如图2-7所示:
锯齿波雷达发射信号由多个单扫频段组成,周期重复,第个扫频周期锯齿波信号数学表达式如下:
式(2-33)中,为一个相干处理周期内锯齿波的个数,其它参数意义与三角波中相同。假设在t=0时刻,雷达前方存在一个距离为r,以速度v(目标相对于雷达的径向速度,以接近雷达方向为正)匀速运动的目标,则接收到的目标回波信号为:
将进行混频和低通滤波,得到差拍信号:
因为锯齿波线性调频连续波扫频周期T非常小,所以快时间维频谱峰值频率,快时间维可以等效为距离维,频谱单元可以等效为距离单元。
仅仅通过单个扫频段的谱估计只能得到存在距离和速度耦合的差拍信号频率,但在车载防撞雷达中,由于汽车的运动导致大部分目标都存在相对速度,而且相对速度可能较大,由相对速度产生的多普勒频移也会较大,所以通过/A去估计目标距离不能得到准确的距离信息。由式(2-39)可以看出,不同扫频段(慢时间维)的频谱峰值也是一单频信号,通过谱估计可以得到其频率,即目标的多普勒频移。根据即可得到目标的距离和速度信息:
锯齿波体制雷达波形产生简单,相比三角波体制雷达,不存在多目标配对的问题,不会产生虚假目标,但系统信号处理算法比较复杂,导致硬件成本偏高。
1.4.2、锯齿波模糊函数
假设锯齿波雷达发射个周期锯齿波,发射信号复包络S数学表达式为:
单个周期的锯齿波模糊函数与三角波上扫频段的模糊函数相同,可由式(2-25)和(2-26)直接得到,时的模糊函数为:
假设锯齿波雷达载波频率,扫频带宽,扫频周期,,锯齿波模糊函数如图2-8所示:
由式(2-50)可知,锅齿波信号模糊函数由单周期模糊函数被加权后得到,加权因子决定了模糊函数在平面上的分布。由图2-8可知,与三角波不同,锯齿波模糊函数中心带能量主要分布在直线及其附近区域,且能量分布是离散的。
同样,根据式(2-50)可得到归一化相对时延分辨率,则距离分辨率为:
将模糊函数图沿时延轴进行切割,模糊函数波形如图2-10所示:
1.4 仿真与分析
系统仿真参数如表2-2所示:
形如1^2+2^2+3^2+4^2+......+n^2 这样的式子的和是多少呢?或者说我们能否得到一个更简单的公式去计算这个序列的和,而不需要去逐项计算然后再加在一起呢?本文中我们就称这个式子的求和公式叫做平方序列求和公式吧!通过下面的推导我们自然而然得到了平方序列求和公式!当然与其说是推导,不如说是对代数原理熟悉以后的自然而然的发现。
通过本文的例子我们发现原本看上去很复杂的公式,只要我们通过逻辑上的分析以后就不是那么难以理解了。
数学家高斯
如下图所示,我们可以知道(x+1)^3的展开是什么样子的,实际上如果读者熟悉二项式定理的话,应该可以非常容易得到这一展开结果。
我们将上述的展开结果进行推广,考虑当x为正整数时,我们考虑如下图所示的关系:
我们发现如果将上图所示的这些关系加到一起在左边的项大部分都被消去了! 得到了一个非常简单的式子:左边=(x+1)^3-1^3;而右边的式子就比较有特点了,我们观察到右边的式子是由三类项组成的,分别是:
3*(1^2+2^2+3^2+......+x^2) 以及3*(1+2+3+......+x)与x ;
所以:
右边= 3*(1^2+2^2+3^2+......+x^2)+3*(1+2+3+......+x)+x;
我们由高斯求和公式可以很快得到第二项也就是3*(1+2+3+......+x)的求和公式,而第三项x的求和公式就是x本身,将这两项移到左边再除以3我们就自然而然地推导出了平方序列求和公式,这让我们不得不感叹数学的美妙,真是无巧不成书呀!
读者根据本文的启发可以得到立方序列的求和公式吗?请读者自己进行尝试!
温州市青年地理教师研究联盟重磅推出“停课不停研”多系列内容:
1-市高三网络教研活动系列
2-ArcGIS制图微教程系列
3-AI绘图微教程系列
4-微课系列
5-微调研系列
【ArcGIS制图微教程系列】
*教师版
-1-人口迁移流向地图制作——以温州市为例(苍南桥墩高中·刘国平)(已推送)
-2-新冠肺炎地图制作——以温州市为例(苍南桥墩高中·刘国平)(已推送:上集/下集)
-3-地形分析图制作——以温州市为例(永嘉中学·王梦瑞)(已推送:上集/下集)
-4-人口重心迁移——以浙江省为例(永嘉中学·王梦瑞)(已推送)
-5-光照图的制作(温州中学·陈瑞)(已推送)
-6-三维地形图制作——以丽江古城区为例(东瓯中学·覃碧梅)(已推送)
-7-流域水系图制作——以临海市为例(东瓯中学·覃碧梅)(已推送)
-8-最佳路径分析——以苍南县为例(金乡高中·苏校)(已推送)
-9-地形对交通线路的影响——以苍南地形为例(金乡高中·苏校)(已推送)
-10-中国人口密度及结构(瓯海中学·周倩倩)(已推送)
-11-中国地震、泥石流和滑坡灾害(瓯海中学·周倩倩)(已推送)
-12-模拟海平面上升——以苍南县为例(苍南桥墩高中·刘国平)(已推送)
-13-城镇化进程及其影响——以龙港市为例(苍南桥墩高中·刘国平)
-14-土地利用分布图的制作——以温州市为例(苍南桥墩高中·刘国平)
-15-山脊线、山谷线和地形鞍部的提取(金乡高中·苏校)
-16-利用插值分析制作降水分布图(温州中学·陈瑞)
-17-简易专题分布图的制作(温州中学·陈瑞)
-18-地形特征提取——以山西省太原市工业区位因素为例(瓯海中学·周倩倩)
*学生版
-19-地形特征提取——以山西省太原市工业区位因素为例(瓯海中学·周倩倩)
注:已推送的微教程,点击相应标题可查看
【本期主题】
城镇化进程及其影响——以龙港市为例
【制作人】
刘国平(苍南桥墩高中、温州青年地理教师研究联盟ArcGIS小组组长)
-城镇化进程及其影响——以龙港市为例1-
-城镇化进程及其影响——以龙港市为例2-
编辑:林君怀(温州市艺术学校)
1、一行代码实现1--100之和
利用sum()函数求和
2、如何在一个函数内部修改全局变量
函数内部global声明 修改全局变量
3、列出5个python标准库
os:提供了不少与操作系统相关联的函数
sys: 通常用于命令行参数
re: 正则匹配
math: 数学运算
datetime:处理日期时间
4、字典如何删除键和合并两个字典
del和update方法
5、谈下python的GIL
GIL 是python的全局解释器锁,同一进程中假如有多个线程运行,一个线程在运行python程序的时候会霸占python解释器(加了一把锁即GIL),使该进程内的其他线程无法运行,等该线程运行完后其他线程才能运行。如果线程运行过程中遇到耗时操作,则解释器锁解开,使其他线程运行。所以在多线程中,线程的运行仍是有先后顺序的,并不是同时进行。
多进程中因为每个进程都能被系统分配资源,相当于每个进程有了一个python解释器,所以多进程可以实现多个进程的同时运行,缺点是进程系统资源开销大
6、python实现列表去重的方法
先通过集合去重,在转列表
7、fun(*args,**kwargs)中的*args,**kwargs什么意思?
8、python2和python3的range(100)的区别
python2返回列表,python3返回迭代器,节约内存
9、一句话解释什么样的语言能够用装饰器?
函数可以作为参数传递的语言,可以使用装饰器
10、python内建数据类型有哪些
整型--int
布尔型--bool
字符串--str
列表--list
元组--tuple
字典--dict
11、简述面向对象中__new__和__init__区别
__init__是初始化方法,创建对象后,就立刻被默认调用了,可接收参数,如图
1、__new__至少要有一个参数cls,代表当前类,此参数在实例化时由Python解释器自动识别
2、__new__必须要有返回值,返回实例化出来的实例,这点在自己实现__new__时要特别注意,可以return父类(通过super(当前类名, cls))__new__出来的实例,或者直接是object的__new__出来的实例
3、__init__有一个参数self,就是这个__new__返回的实例,__init__在__new__的基础上可以完成一些其它初始化的动作,__init__不需要返回值
4、如果__new__创建的是当前类的实例,会自动调用__init__函数,通过return语句里面调用的__new__函数的第一个参数是cls来保证是当前类实例,如果是其他类的类名,;那么实际创建返回的就是其他类的实例,其实就不会调用当前类的__init__函数,也不会调用其他类的__init__函数。
12、简述with方法打开处理文件帮我我们做了什么?
打开文件在进行读写的时候可能会出现一些异常状况,如果按照常规的f.open
写法,我们需要try,except,finally,做异常判断,并且文件最终不管遇到什么情况,都要执行finally f.close()关闭文件,with方法帮我们实现了finally中f.close
(当然还有其他自定义功能,有兴趣可以研究with方法源码)
13、列表[1,2,3,4,5],请使用map()函数输出[1,4,9,16,25],并使用列表推导式提取出大于10的数,最终输出[16,25]
map()函数第一个参数是fun,第二个参数是一般是list,第三个参数可以写list,也可以不写,根据需求
14、python中生成随机整数、随机小数、0--1之间小数方法
随机整数:random.randint(a,b),生成区间内的整数
随机小数:习惯用numpy库,利用np.random.randn(5)生成5个随机小数
0-1随机小数:random.random(),括号中不传参
15、避免转义给字符串加哪个字母表示原始字符串?
r , 表示需要原始字符串,不转义特殊字符
16、
中国 ,用正则匹配出标签里面的内容(“中国”),其中class的类名是不确定的 17、python中断言方法举例
assert()方法,断言成功,则程序继续执行,断言失败,则程序报错
18、数据表student有id,name,score,city字段,其中name中的名字可有重复,需要消除重复行,请写sql语句
select distinct name from student
19、10个Linux常用命令
ls pwd cd touch rm mkdir tree cp mv cat more grep echo 20、python2和python3区别?列举5个
在HTML中,我们可以使用以下三种方式更改文本颜色:
使用HTML标签
使用内联样式属性
使用内部CSS
使用HTML标签
使用Html标签更改网页上的文本颜色,按照以下步骤,我们可以轻松完成。
步骤1:首先,我们在文本编辑器中键入Html代码,或者在本编辑器中打开现有的Html文件。
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>奔月教程(runoon.com)</title> </head> <body> <h3>《浪淘沙·帘外雨潺潺》</h3> <p>帘外雨潺潺,春意阑珊。</p> <p>罗衾不耐五更寒。</p> <p>梦里不知身是客,一晌贪欢。</p> <p>独自莫凭栏,无限江山,别时容易见时难。</p> <p>流水落花春去也,天上人间。</p> </body> </html> 步骤2:将光标移动到要更改颜色的文本的开头,在该位置键入标签,文本结尾处关闭标签。
< font > 单行文本和语句 </ font >
步骤3:在标签内添加名称为“ color ”的字体属性,在color属性中键入颜色名称或颜色值。
<h3>《浪淘沙·帘外雨潺潺》</h3> <p><font color="red">帘外雨潺潺,春意阑珊。</font></p> <p><font color="green">罗衾不耐五更寒。</font></p> <p><font color="yellow">梦里不知身是客,一晌贪欢。</font></p> <p><font color="pink">独自莫凭栏,无限江山,别时容易见时难。</font></p> <p><font color="purple">流水落花春去也,天上人间。</font></p> 步骤4:最后将HTML代码保存在文本编辑器中并运行代码。执行后,我们将在浏览器中看到输出。
效果展示:
《浪淘沙·帘外雨潺潺》
帘外雨潺潺,春意阑珊。
罗衾不耐五更寒。
梦里不知身是客,一晌贪欢。
独自莫凭栏,无限江山,别时容易见时难。
流水落花春去也,天上人间。
点击下方“阅读原文”可亲试效果
注意:HTML 5不支持字体的color属性,因此我们必须使用内联样式属性和内部CSS选项来更改文本的颜色。
使用内联样式属性
如果想用内联样式属性来更改文本的颜色,按照以下步骤,可以轻松实现。
步骤1:在文本编辑器中键入HTML代码或打开现有HTML文件。
步骤2:将光标移动到我们要更改颜色的文本的开头,在元素中键入内联样式属性,在文本结尾处关闭元素。在这里我们使用了
(段落)标签:
< p style = “ color:red;” > 任何文本 </ p >
会不存在于state_dict里面,从而无法通过model.parameters()找到并进行优化。
由清玖团队发行的免费版cloudreve安卓客户端来啦,点击下方链接进行下载吧!
https://cr.z2z.cc
爱你们呦 mua~
已知问题:
1.客户端不会自己申请索要访问手机文件权限 请手动开启
2.部分全面屏手机点击上传文件的时候页面覆盖不完整
我们会在下一个版本进行修复!
备注:开源版与免费版UI不一样,请按照自己喜好下载
提到“索大法”,不论是数码相机、耳机音响还是游戏娱乐产品,都广受消费者的认可;但是今天小编要给大家介绍的并不是以上这些硬件产品,而是索尼的一项音频黑科技——LDAC。
LDAC是由索尼开发的音频编解码技术,于2015年发布(对,已经有五年时间了),它可以通过蓝牙传输96KHz、24bit的音频格式,速度最高可达990kbps。另外,LDAC可传输约3倍于普通蓝牙音频【指采用A2DP协议,SBC编码】(328Kbps,44.1KHz)的信息量。
LDAC刚推出的前几年基本属于索尼独占,只有在索尼自家的耳机、播放器、手机等设备上才能使用,而它对标的则正是高通的aptX技术。不过,从Android 8.0 Oreo系统开始, LDAC成为了安卓开放源代码计划中的一部分,这使得每个OEM(设备制造商)都可以自由地将这个标准集成到他们自己的Android设备中。
需要注意的是,LDAC有三种传输模式,即:最高传输质量的990Kbps模式;默认的660Kbps模式;以及和普通蓝牙标准基本一致的330Kbps模式。至于为什么会预设三种模式?索尼官方表示,目的是为了保证在不同的无线环境下,确保用户的移动设备与扬声器系统之间的无线连接质量。其实在索尼近年来的无线耳机、音响产品上我们也发现,为了保证产品的连接质量,在手机APP中会预设优先级(传输质量优先和音质优先),以方便用户在不同场景下切换。
虽然LDAC技术能够给用户带来更棒的音质享受,轻松超越CD音质,但这里有一个非常重要的前提,那就是需要蓝牙连接的两台设备(如手机和耳机)同时支持该技术,才能够实现LDAC解码。所以对于安卓用户来说,这项“福利”还是很容易拿到的,而iOS用户受限于苹果的封闭系统,目前只能继续使用AAC格式,这也是没有办法的事情。
(7485496)
在很长一段时间里,很多人都遇到了家中路由器信号覆盖不给力的情况,比如路由器放在客厅,晚上在卧室躺在床上刷手机看个视频就很卡,这是为什么呢?这跟我国的无线发射国标有关系。
(国标无线发射功率标准)
根据现行国标,以常用的2.4G频段为例,中国大陆目前要求是100mW,这个发射功率相对较小,信号辐射强度较低,而在北美、澳洲地区实行的发射功率就要高1倍。
一般来说,只要是符合国标的路由器,在实际使用中信号穿1-2堵墙后就会衰弱明显,网络延迟增高等情况。如果要真正的解决这个问题,信号中继增大覆盖范围是个比较好的办法,这也是目前我们越来越多的看到厂商推出“多机路由”、“分布式路由”的原因。
(多机组网是分布式路由的特点)
但是传统的wifi信号中继扩大,多级中继路由多会出现带宽变窄问题,要实现信号覆盖和带宽的平衡,支持 Mesh组网的分布式路由是比较好的解决方案。
分布式可以增加分机覆盖很大的房屋面积,尤其是很适合别墅这样的多层的信号需要穿越地板的房屋使用,带宽得到保证,而且还有走到哪里都是同一个SSID名,不需要切换这种优点。
本文开箱的分布式路由来自Linksys Velop三频AC6600路由,目前是领势家用分布路由的旗舰型号,套装价格2800元左右。另外还有VELOP AC3900(三机)、跟VELOP AC4400(双机)等型号,每个VELOP路由都可以单独使用或者一起使用。
包装背面印刷的信息注明这个Velop路由套装可以覆盖6000平方英尺房屋,换算约可覆盖557平方米的房屋。
Velop AC6600 采用的是高通的芯片方案,三个判断2.4GHz频段、5GHz Band 1频段、GHz Band 4频段, 带宽分别为400+867+867Mbps,一只VELOP路由的理论传输速率为2200Mpbs,所以三只装最大理论传输速率算6600Mpbs。
这个路由还支持配备MU-MIMO和256 QAM技术,可以说是目前家用路由最高规格的产品之一,Mesh组网后可以为未来的4K视频信号传输提供足够带宽,而且能够解决目前家用网络里面越来越多设备接入网络造成局域网设备分配带宽不够、变窄的情况。
这台路由器的处理器为高通IPQ 4019四核716 Mhz,内存达到了512MB,配置是比较豪华的,电源适配器输出功率也达到了12V 2A,要比普通的路由器功率大。
Velop AC6600路由的个头不小,外形设计是现代简约风格,机身上比较干净,侧面、背面、顶部都都开了密集的散热孔,从外形上看颜值是比较高的,内置六条天线,放在家里要比传统的外置天线的路由好看许多。
顶部的指示灯通过灯光的颜色来标识网络的状态,比如网络故障是橙色,灯光的颜色也非常养眼。
路由器的接口和开关都常在底部的凹槽里,里面还有电源开关和红色的重启按键。能够很好的隐藏导线,每只路由配置两个有线接口,不分WAN/LAN会自动识别,VELOP AC6600支持有线回程组网方式。
Velop路由安装和组网可以通过电脑WEB页面进行配置,这个路由器也有蓝牙,手机上下载APP联机设置更方便。下面是手机设置的界面。
手机APP的设置比较“傻瓜”,按照提示一步一步设置,联机后就可以接入因特网使用了。
每一个节点路由设置后就可以添加另外一个节点路由,也可以自定义每个节点的名称,比如客厅路由、书房路由等等,就是检查节点链接速度的过程比较慢。
完成联机后就可以在手机APP里管理和设置路由器,功能也比较丰富,高级设置界面可以对路由比较深度的设置项进行设置。
电脑上的web管理设置界面比较简洁和直观,主要的网络状态显示主界面上。
在设备列表中可以方便的查看联机的各种设备。
安全设置界面
QOS设置,可以设置局域网哪些电脑优先访问网络,获得更高的带宽,比如你玩游戏的PC就可以设置成最高优先级,保证大家一起用网络时游戏网络还能流畅。
前面我们提到美国的无线发射标准要比中国高,所以这个路由器也可以将传输地区设置为“美国“这样无线信号会更强,覆盖面积也更大。
测试环境是两层楼,在过去单只路由器都不能较好的覆盖家里。
一楼放置两只VELOP路由,二楼放置一只VELOP路由。实测信号还是非常好的,基本实现了全屋覆盖。
测试点1:无遮挡
使用手机在无遮挡的环境下连接VELOP路由,测得2.4G信号强度约为-42dbm,5G频段为-52dBm,信号强度较好。
测试点2:间隔1堵墙
间隔1堵墙时,信号强度还是不错的,2.4G频段信号强度约为-61dbm,5G频段为-73dBm,。
测试点3:间隔2堵墙
间隔2堵墙时, 2.4G频段信号强度约为-72dbm,5G频段为-88dBm。
对于分布式路由来说,穿墙已经是无意义的测试了,分布式路由的特点就是哪里信号弱,就增加一个新的节点,这样就能保证全屋的信号均好。
100M移动光宽带测速,下载速率95.2Mbps,上传速率88.17Mbps,Ping值为7ms,基本跑满了运营商的理论带宽。
传输速率方面,VELOP AC6600支持有线回程,基本是按无线的方式设置,然后给每个节点再分别连接有线,是更稳定的网络覆盖方式,有线回程相比无线回程的性能更加的稳定,而且如果是越远则提现的优势更明显。比如你在1楼和2楼间,有线回程带宽就比无线回程要高不少,组网后能保证子节点带宽更广。
这很适合家庭网络传输大量数据和小企业应用,比如从你的电脑存储数据到NAS存储器,或者从家里的电视上点播局域网DLNA服务器上的视频电影等。
LAN to LAN10线程,传输速率达到了940Mbps左右,这在路由器里是比较好的性能,5G频段无线回程也能达到190Mbps左右。
在有线回程的支持下,从NAS上读取一个电影存到电脑上播放,传输速度也到到了106MB/s,可以说是比较理想了。
通过无线网卡来传输也有11MB/s秒,是比较理想的速率。
Linksys 的VELOP系列路由显然是为了适应现代人生活需要而设计的路由,解决家里wifi信号覆盖的问题,提供更大的局域网带宽,满足手机、平板、电视、电脑还有各种智能家电设备同时接入网络,访问网络的需要。
VELOP的优点是带宽大,有线回程性能好,家里哪里信号不好就增加节点,用上了跟本不再担心家里哪里信号不好。Mesh组网的优点相对传统的中继路由还是很明显的,带宽得到保障,其中一个节点故障了整个网络还是畅通的,而且同一个SSID,从1楼走到2楼也不需要切换账号。这个路由如果说缺点的话,只有两个网口似乎少了一点,另外也没有设计USB接口,不过现在很多人用路由器只需要WiFi连接了。另外从价格上来说三机套装的价格还是有点贵的。
Linksys原来属于思科,现在属于贝尔金,产品品质和设计上也比较靠谱,这个路由器通过app安装设置显然也是迎合了移动智能时代的趋势,设计上也更多的呈现了简化、易用的思想,颜色上好看,相比传统的路由器也更适合摆在家里而不会显得难看。
欢迎关注小安的原创消费电子产品体验文章专栏 「intech数玩派」 微博 「@ITZY小安」 微信公众号「intechad」
如果各位读者朋友读到了这里,不妨移步到B zhan(五道口纳什),那里我将进行每周至少一次的更新,更多视频课程等待各位的阅读和反馈。
导览传送门如下:
1. 数据&算法 【手推公式】指数族分布(exponential family distribution),伯努利分布及高斯分布的推导【手推公式】从二分类(二项分布)到多分类(多项分布),最大似然估计与交叉熵损失的等价
【机器学习】【手推公式】从Hinge loss(合页损失)到 SVM(hard margin/soft margin)【手推公式】xgboost自定义损失函数(cross entropy/squared log loss)及其一阶导数gradient二阶导数hessian 2. 数理统计 【统计】统计检验(从t-distribution(t分布)到t-test(t检验),t-score(t-统计量)以及卡方检验(chi-test),excel计算【统计学】p-value(p值) 与 z-score(标准分/z得分/z分数)定义,计算以及适用场景【统计学】从置信水平(confidence level,置信区间)、Z值到最小采样数(最小抽样数)【贝叶斯分析】三门问题(蒙提霍尔悖论,Monty Hall problem)的三个解释及其 python 仿真验证 3. 计算机视觉 【计算机视觉】cnn/maxpool 输入输出 shape 的变化与kernel size、pool size、stride size,padding=same【计算机视觉】从图像距离(图像相似性)的计算(ahash/dhash/phash/whash)到以图搜索的实现 4. coding 与计算机科学 【计算机原理】补码的意义与计算机减法的逻辑【抽样】蓄水池抽样(Reservoir sampling),长度为N的流式(streaming)或链表,每个样本被选中的概率为1/N【抽样】蓄水池抽样(Reservoir sampling)(二),蓄水池容量为m,流式数据量为n,每个样本都等概率的m/n的被 5. 矩阵分析 【矩阵计算】从 im2col 到 GEMM,矩阵与核的卷积到矩阵乘法【矩阵分析】从特征值特征向量到矩阵SVD奇异值分解(np.linalg.svd)【矩阵分析】矩阵奇异值与谱范数(spectral norm),F范数(Frobenius norm),核范数(nuclear norm) 6. 运筹 【运筹】【整数规划】outer approximation 求解 MINLP及示例【ortools】【cpmodel】八皇后问题的约束规划求解(leetcode 51/52 n-queens)