089【RTKLIB源码之postpos-5】pppos

通过lwip2.0.2 PPP协议与GPRS模块实现网络通讯 一、基本概念 1、网络协议 GPRS无线数据传输的最低层,即物理层是通过RS232串口及GPRS模块组成的,然后是数据链路层。其中涉及到PPP协议实现过程。数据链路层上面是网络层,其后是传输层,TCP/IP其中IP协议属于网络层协议,而UDP、TCP都属于传输层协议传输层上方的是包括会话层、表示层、应用层等。 针对LWIP来看,硬件结构可以分为网卡或者串口两种物理层架构,如果用到网卡将使用 阅读详情

pppos

pppos
filter
gpst2utc
mat
matcpy
norm
ppp_ar
ppp_res
satposs
test_hold_amb
testeclipse
tidedisp
time2str
trace
udstate_ppp
update_stat
zeros
序号函数链接属性类型位置
1filterexternintrtkcmn.c
2ppp_arexternintppp_ar.c
3ppp_resstaticintppp.c
4test_hold_ambstaticintppp.c
5testeclipsestaticvoidppp.c
6tidedispexternvoidtides.c
7udstate_pppstaticvoidppp.c
8update_statstaticvoidppp.c

1 filter

filter
filter_
imat
mat
序号函数链接属性类型位置
1filter_staticintrtkcmn.c

1.1 filter_

filter_
eye
mat
matcpy
matinv
matmul
序号函数链接属性类型位置
1eyeexterndoublertkcmn.c

2 ppp_res

ppp_res
antmodel
const_corr
corr_meas
ecef2pos
geodist
ionmapf
model_iono
model_phw
model_trop
satantpcv
satazel
satexclude
satsys
time2str
trace
varerr
序号函数链接属性类型位置
1antmodelexternvoidrtkcmn.c
2const_corrstaticintppp.c
3corr_measstaticvoidppp.c
4ionmapfexterndoublertkcmn.c
5model_ionostaticintppp.c
6model_phwstaticintppp.c
7model_tropstaticintppp.c
8satantpcvstaticvoidppp.c

2.1 antmodel

antmodel
dot
interpvar
trace
序号函数链接属性类型位置
1interpvarexternvoidrtkcmn.c

2.2 const_corr

const_corr
pppcorr_stec
pppcorr_trop
序号函数链接属性类型位置
1pppcorr_stecexternintppp_corr.c
2pppcorr_tropexternintppp_corr.c

2.3 corr_meas

corr_meas
satsys
testsnr

2.4 model_iono

model_iono
ionmodel
iontec
pppcorr_stec
sbsioncorr
timediff

2.5 model_phw

model_phw
cross3
dot
ecef2pos
norm
normv3
sat_yaw
xyz2enu
序号函数链接属性类型位置
1sat_yawexternvoidrtkcmn.c
2.5.1 sat_yaw
sat_yaw
cross3
dot
gpst2utc
matcpy
normv3
sunmoonpos
yaw_angle
序号函数链接属性类型位置
1yaw_angleexternintppp.c
2.5.1.1 yaw_angle
yaw_angle
yaw_nominal
序号函数链接属性类型位置
1yaw_nominalstaticdoubleppp.c

2.6 model_trop

model_trop
matcpy
pppcorr_trop
sbstropcorr
trop_model_prec
tropmodel
序号函数链接属性类型位置
1trop_model_precstaticdoubleppp.c
2.6.1 trop_model_prec
trop_model_prec
tropmapf
tropmodel
序号函数链接属性类型位置
1tropmapf未定义?

2.7 satantpcv

satantpcv
antmodel_s
dot
normv3
序号函数链接属性类型位置
1antmodel_sexternvoidrtkcmn.c
2.7.1 antmodel_s
antmodel_s
interpvar
trace

3 testeclipse

testeclipse
dot
gpst2utc
norm
normv3
sunmoonpos
time_str
trace

4 tidedisp

tidedisp
geterp
matmul
norm
sunmoonpos
tide_oload
tide_pole
tide_solid
time_str
timeadd
trace
utc2gpst
xyz2enu
序号函数链接属性类型位置
1geterpexternintrtkcmn.c
2tide_oloadstaticvoidtides.c
3tide_polestaticvoidtides.c
4tide_solidstaticvoidtides.c

4.1 geterp

geterp
epoch2time
gpst2utc
timediff
trace

4.2 tide_oload

tide_oload
epoch2time
time2epoch
timediff
trace

4.3 tide_pole

tide_pole
iers_mean_pole
trace
序号函数链接属性类型位置
1iers_mean_polestaticvoidtides.c
4.3.1 iers_mean_pole
iers_mean_pole
epoch2time
timediff

4.4 tide_solid

tide_solid
tide_pl
trace
序号函数链接属性类型位置
1tide_plstaticvoidtides.c
4.4.1 tide_pl
tide_pl
dot
norm
trace

5 udstate_ppp

udstate_ppp
trace
udbias_ppp
udclk_ppp
uddcb_ppp
udiono_ppp
udpos_ppp
udtrop_ppp
序号函数链接属性类型位置
1udbias_pppstaticvoidppp.c
2udclk_pppstaticvoidppp.c
3uddcb_pppstaticvoidppp.c
4udiono_pppstaticvoidppp.c
5udpos_pppstaticvoidppp.c
6udtrop_pppstaticvoidppp.c

5.1 udbias_ppp

udbias_ppp
corr_meas
detslp_gf
detslp_ll
detslp_mw
ecef2pos
initx
satsys
time2gpst
time_str
trace
序号函数链接属性类型位置
1detslp_gfstaticvoidppp.c
2detslp_llstaticvoidppp.c
3detslp_mwstaticvoidppp.c
4initxstaticvoidppp.c
5.1.1 detslp_gf
detslp_gf
gfmeas
trace
序号函数链接属性类型位置
1gfmeasstaticdoubleppp.c
5.1.1.1 gfmeas
gfmeas
satsys
5.1.2 detslp_ll
detslp_ll
trace
5.1.3 detslp_mw
detslp_ll
mwmeas
trace
序号函数链接属性类型位置
1mwmeasstaticdoubleppp.c
5.1.3.1 mwmeas
mwmeas
satsys

5.2 udclk_ppp

udclk_ppp
initx
trace

5.3 uddcb_ppp

uddcb_ppp
initx
trace

5.4 udiono_ppp

udiono_ppp
ecef2pos
initx
ionmapf
satsys
trace

5.5 udpos_ppp

udpos_ppp
covecef
ecef2pos
eye
imat
initx
mat
matmul
norm
trace

5.6 dtrop_ppp

dtrop_ppp
ecef2pos
initx
sbstropcorr
trace
卫星导航定位误差之多路径&地球自转&相位缠绕&相位中心误差&地球潮汐 一、多路径 在GNSS测量中,被测站附近的反射物所反射的卫星信号(反射波)如果进入接收机天线,就将和直接来自卫星的信号(直射波)产生干涉,从而使观测值偏离真值,产生所谓的“多路径误差”。这种由于多路径的信号传播所引起的干涉时延效应被称做多路径效应。 1、反射波对直射波/信号的影响 实际测量中,GNSS天线接收到的信号是直射波和反射波发生干涉后的组合信号。反射物可以是地面、山坡和测站附近的建筑物等。现以地面为例来加以说明。若接收天线同时收到了直接来自卫星的信号S和经地面反... 阅读详情

相关推荐

项目记录

声明:本文章只为记忆,其中错误,希望指正。 项目记录: 2016.6.23 (1)mDNS (multicast DNS)(组播DNS); (2)协议是基于UDP协议的 局域网发现协议,协议规定端口号为5353 ,组播地址为 224.0.0.251 ; (3)主机进入局域网后会向网络发送请求数据包,包括(本身IP,服务等信息),局域网内有mDNS功能的设备收到数据后,会向局域网被返回自身信

Lustrum的博客 1439

STM32 + LWIP+PPPOS 4G模块拨号

这里写自定义目录标题 最近公司要使用移远的EC200S模组进行物联网开发,除了EC200S模组还要支持以太网,而以太网是使用了LWIP协议栈,为了减少4G模块的开发量,以及为了后续的数据处理的方便和别的功能的实现就没有使用EC200S内置的协议,使用LWIP进行PPPOS拨号,而在在ppp拨号成功后进行联网上面阻塞了很久。在进行TCP连接时LWIP内核组包生成的PPP帧通过串口发送给模组后始终是得不到服务端的回应,后面进行抓包分析,一个细节就是checksum那边没有参数,最终得出结果就是由于开发以太网是L

weixin_43732709的博客 6256

lwip pppos拨号上网,通过串口ppp拨号上网

lwip+freeRTOS+pppos拨号上网,能够实现普通4G,2G等模块上网

【亲测免费】 高效连接4G模组:FreeRTOS-TCPIP与PPPOS的完美结合

高效连接4G模组:FreeRTOS-TCPIP与PPPOS的完美结合 【下载地址】FreeRTOS-TCPIP使用PPPOS连接4G模组教程 本资源文件提供了一个基于FreeRTOS-TCPIP协议栈的解决方案,用于通过PPPOS(Point-to-Point Protocol over Serial)连接4G模组。与传...

gitblog_09815的博客 852

FreeRTOS-TCPIP使用PPPOS连接4G模组,非lwip

AT指令搞4G模组太慢!!! FreeRTOS-TCPIP使用PPPOS连接4G模组,FreeRTOS-TCPIP协议栈,非lwip。4G模组使用的EC600N,协议栈使用的FreeRTOS-TCPIP,PPPOS用的picoTCP的PPP组件。 非lwip,非AT指令。

RTKSharp:这是C#上LibRTK的端口,并进入一个小型c / c ++库。-开源

RTKLIB是用于GNSS(全球导航卫星系统)的标准和精确定位的开源程序包。 RTKLIB包含一个可移植程序库和几个使用该库的AP(应用程序)。 此端口仅包含用于C / C ++语言的库(.so或.dll)和用于C#/。NET Framework的.dll。 RTKSharp与使用.NET / Mono Assembly的Windows和Linux兼容,无需重新编译/交叉构建。

【LWIP的mDNS】

设备a知道有人查询它后,也是通过同样的组播组回复它的地址信息(通过回复用于IPv4的A类型DNS记录(A Record)或者用于IPv6的AAAA类型的DNS记录,A记录和AAAA记录分别用于将域名转换成IP地址),这里组播内的所有人b, c, d都会收到,它们会将a.local的ip地址等信息(如TTL值)刷新到mDNS缓冲区中。mDNS协议适用于局域网内没有DNS服务器时的域名解析,设备通过组播的方式交互DNS记录来完成域名解析,约定的组播地址是:224.0.0.251,端口号是5353。

weixin_42784163的博客 1462

两轮差速移动机器人运动分析、建模和控制

两轮差速运动分析及建模运动学分析三种运动状态分析函数模型仿真验证直线验证曲线验证旋转验证运动控制 运动学分析 运动特性为两轮差速驱动,其底部后方两个同构驱动轮的转动为其提供动力,前方的随动轮起支撑作用并不推动其运动,如图1两轮差速驱动示意图所示。 定义其左右驱动轮的中心分别为Wl和Wr,且对应线速度为Vl和Vr,该值可以通过电机驱动接口输出的角转速ωl,ωr2和驱动轮半径r求得,即: Vl=r⋅...

启小新的博客 8万+

103-RTKLIB中对流层延迟模型

1、Troposphere Model 该模型实际上就是Saastamoinen模型,实现函数为tropmodel,求得的是信号传播路径上的电离层延迟。 值得注意的是,该函数中干延迟与湿延迟是分开求取的,然后相加,这样做的目的是可以方便的直接求取天顶干延迟,只需要将卫星高度角设置为90度,相对湿度设置为0.在第三个模型精细的对流层模型中就使用了该函数求天顶干延迟。 模型实现较为简单,只是最后面干...

学问思辨行 9101

利用图层自动识别算法实现CAD到Revit BIM模型的高效转换 - VS2022与AutoCAD2024开发环境配置指南

本文详细介绍了如何配置VS2022与AutoCAD2024开发环境,并利用图层自动识别算法实现CAD图纸到Revit BIM模型的高效自动化转换。通过解析CAD图层的规律性,该算法能智能识别并分类墙、门、窗等构件,提取几何信息并驱动Revit自动创建三维模型,从而将传统繁琐的人工“翻模”工作转化为高效、准确的自动化流程,大幅提升BIM模型创建效率。

Apple的专栏 1125

高通camx ThreadManager

m_pCore->AcceptNewJob是将一个Job或者任务插入一个Queue,有一个工作线程循环从Queue中取Job任务执行,执行任务就是回调任务中的callback函数,AcceptNewJob实现。调用AddToPriorityQueue将任务添加到queue任务队列,那么什么时候从这个queue中取任务执行呢?有个线程循环执行DoWork,最终调用checkAndDequeue取任务执行。

GetnextWindow的专栏 435

RTKLIB学习(二)--2、PPP代码分析

最主要目的实现对扩展卡尔曼滤波在PPP中的代码具体分析

yitian_00的博客 4073

学习记录——SIMPACK生成轨道谱文件的方法

生成轨道谱文件的方法,可以用于实测轨道谱导入和自制轨道谱导入仿真

weixin_51965897的博客 7801

【亲测免费】 FreeRTOS-TCPIP使用PPPOS连接4G模组教程

FreeRTOS-TCPIP使用PPPOS连接4G模组教程 【下载地址】FreeRTOS-TCPIP使用PPPOS连接4G模组教程 本资源文件提供了一个基于FreeRTOS-TCPIP协议栈的解决方案,用于通过PPPOS(Point-to-Point Protocol over Serial)连接4G模组。与传统的AT指...

gitblog_09764的博客 883

innovus中path group 的策略和应用(上)

在所有的后端工具里边,有三个重要的引擎:auto-place,CTS,auto-route三个。这里边的auto-place是决断了整个设计时序的基点。。当然,就算是到了CTS/route阶段后,也可以继续利用auto-place数据优化的功能,在数据库上做数据路径增量优化(optDesign -increment)。可以说,数据路径的优化手段,实际上是贯穿在整个后端流程上的。。看看这其中的奥妙和有趣的事情。ICer GO!

i_chip_backend的博客 4216

微信小程序 - 强力解决播放视频卡顿问题,小程序使用video组件播放视频或第三方视频插件,会出现卡顿或者无法播放的各种奇怪问题(微信小程序苹果ios/安卓播放视频很卡不流畅、视频太长或文件大等情况)

微信小程序视频组件播放卡顿,微信小程序video组件出现无法播放或卡顿,微信小程序video组件播放时会出现卡顿,微信小程序使用video组件播放视频的时候,会出现卡顿或者无法播放的问题,微信小程序安卓视频播放卡顿问题,微信小程序苹果ios手机播放视频不流畅很卡,加cdn还是卡,uniapp播放视频会有明显的卡顿问题,video视频时卡顿不流畅问题,为什么video组件播放视频卡顿?苹果微信小程序通过video组件播放视频时卡顿,怎么解决?微信小程序video组件出现无法播放或卡顿,设置custom-cac

🏆 前端领域优质创作者 1万+

STM32 H7 上配置 LwIP 的 mDNS

STM32 H7 上配置 LwIP 的 mDNS

wh9的博客 2977

不藏了!Wireshark 命令、捕获、过滤器大全分享给你

Wireshark,这款广受欢迎的开源网络协议分析工具,堪称网络管理员、网络安全专家和网络爱好者的“显微镜”!它可以帮助我们捕获网络中的数据包,并提供详细的解码和分析能力。本文将为您全面剖析 Wireshark 的强大功能,从基础到高级,让你快速掌握这个神器!💡Wireshark 是一款功能强大的网络协议分析器,最早由 Gerald Combs 于 1998 年开发,经过多年发展,已成为网络诊断和分析的首选工具。

网络技术联盟站 726

RTKLIB中PPP程序结构及重要函数

1 程序结构 2 重要函数 (1)pppos中主要函数 udstate_ppp:更新状态变量xp、更新Pp矩阵 ppp_res:计算观测值残差v、构造H矩阵、计算观测误差方差构造R矩阵 filter:卡尔曼滤波测量更新,得到x、P (2)udstate_ppp中主要函数 udpos_ppp:更新位置变量。首历元初始化,赋SPP定位解;static模式继承上一时刻x与P矩阵;kinematic模式x赋SPP定位结果,P矩阵初始化为较大值。 udclk_ppp:更新接收机钟差变量。每一个历.

papunzal的博客 2601

5. SAP UI5 视图控制器(Controller)初探

本教程的前一个步骤也就是第四个步骤,我们了解了 SAP UI5 XML 视图的使用方法。在该步骤里,我们在 XML 视图里声明了一个 Text 控件实例,该控件位于 sap.m 这个命名空间内。 本步骤会继续接触 SAP UI5 MVC 框架中三大基石的另一块:C - Controller,即控制器。 先看看本步骤完成之后,我们得到的 SAP UI5 应用能实现一个什么样的效果。 访问如下 url: http://localhost:8080/webapp/index.html 能看到一个 Say Hell

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 4595

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

21、lwIP 整体架构分析 -- PPPoS 协议详解

PPPoS (PPP over Serial) 是在串行链路上承载 PPP 会话的协议,广泛应用于调制解调器、串口通信等场景。PPPoS 提供了在串行链路上建立可靠网络连接的能力,支持认证、压缩和加密等功能。PPPoS 协议在串行通信中广泛应用,特别是在调制解调器和嵌入式系统中。LWIP 提供了完整的 PPPoS 实现,包括 HDLC 帧封装、PPP 协议协商和认证功能。关键是要理解串口通信的基础知识、HDLC 帧格式和 PPP 协议状态机的工作机制。

imcgimcg的博客 1057

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

RTKLIB 中的天线相位缠绕误差修正

之前一直没有细看精密定位(PPP)中的相位缠绕,不过我觉得还是应该至少从应用层面理解PPP中每项修正。因此抱着不求甚解的心情(非通信专业人士,没有仔细去研究和理解右旋极化信号、偶极等概念),只从应用的角度来看看RTKLIB是如何进行天线相位缠绕修正的。 文章目录相位缠绕概念相位缠绕误差计算方法model_phw函数参考文献 相位缠绕概念 根据各文献的引用来看,参考文献[1]是最经典的文献,但是没有找到下载,只能从其他博客和论文[2~4]得到对以下问题的一些理解。 相位缠绕是什么? 发射天线和接收天线绕极

weixin_42918498的博客 2942

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

PPP LWIP中断安全 线程安全

在做ppp驱动3G/4G模块时,用的LWIP协议栈,循环接收处理串口数据时,会调用这2个函数中的一个 pppos_input(); pppos_input_tcpip() 看下面这段话,我理解的意思是,pppos_input_tcpip()是线程安全的,可以随便调用, 但是也不要从串口收到一个字节就调用1 次, 而pppos_input()是线程不安全的,如果在运行pppos_input()的时候,不能调用NEVER call pppos_connect(), pppos_listen() and p..

明天乌儿会歌唱 1533

stm32f207 移植 lwip 2.0.2 使用mdns协议疑惑

mdns: (multicast DNS)在一个局域网内,用mdns在pc端发现设备。组播IP地址: 224.0.0.251. 端口号: 5353.在stm32f207平台上移植好了Lwip 2.0.2协议栈(无操作系统),用静态IP可以与电脑 ping 通。现在添加了..\\lwip-2.0.2\src\apps\mdns下的mdns文件以及包含了..\lwip-2.0.2\src\includ...

liaonhao的博客 4409
上一篇: 088【RTKLIB源码之postpos-4】pntpos
下一篇: 090【RTKLIB源码之postpos-6】relpos
魔方的块
博客等级 码龄11年 1056粉丝 119原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值