博客

  • 位移传感器的通信接口介绍

    位移传感器的输出型式(通信接口)比较多,经常搞不清,整理了下面资料备查。

    随着技术的发展,自动化程度越来越高,位移传感器的输出信号越来越多样化,位移传感器的主要输出类型大致分为这几种:摸拟量输出型电流型(4~20mA;或20~4mA);电压型(0~10Vdc;或10~0Vdc);脉冲信号(绝对编码SSI,RS485格雷码信号输出等),及数字量的SSI和Start/Stop,现场总线的CANbus和Profibus-DP等。下面我们来详细的介绍下各种通讯协议:

    常用接口介绍

    1、Profibus

    PROFIBUS(Process Fieldbus)是由西门子等公司开发的一种国际化的、开放的、不依赖于设备生产商的现场总线标准。先后成为德国和欧洲的现场总线标准(DINl9245和EN50170),并于2000年成为IEC61158国际现场总线标准之一,2001年成为我国机械行业标准JB厂r10308.3.2001¨“。PROFIBUS现场总线是一个开放的、与制造商无关、无知识产权保护的国际标准,任何人都可以获得这个标准并设计各自的软、硬件解决方案。PROFIBUS支持双绞线、光钎等通信介质。PROFIBUS分为PROFIBUS-DP、PROFIBUS-FMS、PROFIBUS-PA等,一般传感器只需实现PROFIBUS-DP。这种协议磁致伸缩位移传感器使用的比较多。

    2、RS-485

    RS-485是IEC制定的推荐标准,这是一个通信接口的物理层协议的标准。使用双绞线、差分方式传输电信号,具有抗干扰能力强,通信距离远,成本低,可以在一条双绞线上实现一主多从德通信模式等优点。其最大通信距离为1200米,在工业上应用十分广泛。但由于其仅实现了物理层,不能解决通信介质共享问题,需要应用程序通过“轮询”的方式实现多机通信,并且在一条总线上只能有一台主机,最多可以有110台设备。拉绳位移传感器和磁致伸缩位移传感器都使用的比较多。

    3、SSI

    SSI(Synchronous Serial Interface, 同步串行接口)是一种全双工的高速串行接口,主要用于实现芯片与芯片之间的串行通信。支持一主多从的系统结构,它3或4根信号线,以主机主动式读出方式工作,即在主控者发出的时钟脉冲的控制下,实现与从机之间的通信。一般而言SSI的通信距离在1米以内。拉绳位移传感器和磁致伸缩位移传感器都是有应用的。

    4、MODBUS

    由于RS-485只实现了物理层,难于解决不同厂家的设备在同一系统共存的问题。为此,MODICON制定了一个建立在RS-485之上的“应用层协议”——MODBUS。协议规定了数据包的格式、实现的命令等。任何厂家生产的设备只要其符合MODBUS协议都可以在同一系统中工作。MODBUS协议uye只支持单主机,并通过轮询方式实现共享信道。这种协议一般是磁致伸缩位移传感器使用较多

    5、CANBUS

    CANBUS是德国BoSCH公司在SAE(汽车工程协会)上介绍的新型串行通信协议,其全称为ControllerArea Network),其主要目的是实现汽车环境中的微控制器之间的通信。由于其可靠性高、通信速率高、结构简单,因而在工业控制领域也获得广泛应用。

    CANBUS的最高通信速率为1Mbps,最大通信距离为10KM。支持多主机系统。CANBUS协议包括了物理层和数据链路层,所以它可以实现多台设备共享通信介质。在一条双绞线上最多可以连接110个CANBUS装置,目前协议有CAN2.0A、CAN2.0B等。基本是磁致伸缩位移传感器使用。

  • CSP-S复赛知识点

    十月份目标

    1. 刷完算阶(这很重要)
    2. 熟练各种基础板子
    • 最短路:F l o y d FloydFloyd,B e l l m a n − F o r d Bellman-FordBellmanFord,D i j k s t r a DijkstraDijkstra, S P F A SPFASPFA
    • 最小生成树:p r i m primprim,k r u s k a l kruskalkruskal
    • 分治:二分答案,二分查找
    • 位运算
    • 排序算法
    • 字符串:K M P KMPKMP,T r i e TrieTrie树,A C ACAC自动机
    1. 熟练运用各种S T L STLSTL
    • 栈(s t a c k stackstack)(先进后出)
    • 队列(q u e u e queuequeue)(先进先出)
    • 优先队列(p r i o r i t y _ q u e u e priority\_queuepriority_queue)(堆)
    • 双端队列(d e q u e dequedeque
    • 平衡树(s e t setset)(m u l t i s e t multisetmultiset
    • 映射(m a p mapmap)(可代替h a s h hashhash表)
    • 随机数组(v e c t o r vectorvector)(可用来实现邻接表)
    • l o w e r _ b o u n d lower\_boundlower_bound与u p p e r _ b o u n d upper\_boundupper_bound(二分时候用)
    • 去重函数u n i q u e uniqueunique(可以用来离散化)

    十一月目标

    1. 每天都要接触洛谷蓝以上难度的DP、图论、数论
    2. 掌握动态规划中的状态压缩DP、计数DP、树形DP与数位DP
    3. 进阶数据结构的模板
    • 树状数组
    • 线段树
    • 分块+莫队
    1. 图论
    • T a r j a n TarjanTarjan算法与图的连通性
    • 树的直径与L C A LCALCA
    1. 数论
    • 矩阵乘法
    • 组合计数
    • 概率与数学期望
    • 博弈论
  • CSP-J CSP-S NOIP2020初赛知识点—硬件、进制与编码!

    CSP-J/S初赛已经报名好了,考好了才有机会复赛,才有机会参加全国青少年信息学奥林匹克联赛NOIP2020,现在开始抓紧复习吧。

    下面主要介绍硬件、进制与编码相关知识点。 (更多…)

  • CSP-S/J2020 时间流程

    2020年的CSP-S/J来了,今年想要报名NOIP(全国青少年信息学奥林匹克联赛)的话,需要条件:1.凡是由CCF认定的国内国际程序设计竞赛或能力认证中取得优秀成绩者;2.CCF认可的指导教师推荐

    所以还是要努力对待,首先是要过初赛。复赛的话就尽力吧,CSP-J入门组可能问题不大,CSP-S提高组的话可能实力还要加强。加油吧!

    第一轮认证

    日期时间内容角色
    9月1日-23日全天系统注册、审核教师、认证组织单位总负责人
    9月1日-24日全天系统注册、报名、审核认证者、教师、认证组织单位总负责人
    9月10日-26日全天最终确认报名认证者
    9月27日9:00-16:00生成准考证号、提交报名表认证组织单位总负责人
    10月6日-11日全天下载准考证认证者
    10月11日9:30-11:30CSP-S1组认证提高级认证者
    14:30-16:30CSP-J1组认证入门级认证者
    10月20日全天公布第一轮认证成绩认证组织单位总负责人

    第二轮认证

    日期时间内容角色
    10月22日-29日全天系统注册、审核教师、认证组织单位总负责人
    10月22日-30日全天系统注册、报名、审核认证者、教师、认证组织单位总负责人
    10月24日-31日全天最终确认报名认证者
    11月1日9:00-16:00生成准考证号、提交报名表认证组织单位总负责人
    11月3日-7日全天下载准考证认证者
    11月7日8:30-12:00CSP-J2组认证入门级认证者
    14:30-18:30CSP-S2组认证提高级认证者
    11月16日17:00前公布第二轮初评成绩CCF
    11月17日-19日19日16:00申诉结束申诉期CCF
    11月19日-22日申诉处理期 CCF
    11月25日左右 公布最终认证成绩CCF
  • 理解矩阵乘法——线性方程

    大多数人在高中,或者大学低年级,都上过一门课《线性代数》。这门课其实是教矩阵。

    刚学的时候,还蛮简单的,矩阵加法就是相同位置的数字加一下。

    矩阵减法也类似。

    矩阵乘以一个常数,就是所有位置都乘以这个数。

    但是,等到矩阵乘以矩阵的时候,一切就不一样了。

    这个结果是怎么算出来的?

    教科书告诉你,计算规则是,第一个矩阵第一行的每个数字(2和1),各自乘以第二个矩阵第一列对应位置的数字(1和1),然后将乘积相加( 2 x 1 + 1 x 1),得到结果矩阵左上角的那个值3。

    也就是说,结果矩阵第m行与第n列交叉位置的那个值,等于第一个矩阵第m行与第二个矩阵第n列,对应位置的每个值的乘积之和。

    怎么会有这么奇怪的规则?

    我一直没理解这个规则的含义,导致《线性代数》这门课就没学懂。研究生时发现,线性代数是向量计算的基础,很多重要的数学模型都要用到向量计算,所以我做不了复杂模型。这一直让我有点伤心。

    前些日子,受到一篇文章的启发,我终于想通了,矩阵乘法到底是什么东西。关键就是一句话,矩阵的本质就是线性方程式,两者是一一对应关系。如果从线性方程式的角度,理解矩阵乘法就毫无难度。

    下面是一组线性方程式。

    矩阵的最初目的,只是为线性方程组提供一个简写形式。

    老实说,从上面这种写法,已经能看出矩阵乘法的规则了:系数矩阵第一行的2和1,各自与 x 和 y 的乘积之和,等于3。不过,这不算严格的证明,只是线性方程式转为矩阵的书写规则。

    下面才是严格的证明。有三组未知数 x、y 和 t,其中 x 和 y 的关系如下。

    x 和 t 的关系如下。

    有了这两组方程式,就可以求 y 和 t 的关系。从矩阵来看,很显然,只要把第二个矩阵代入第一个矩阵即可。

    从方程式来看,也可以把第二个方程组代入第一个方程组。

    上面的方程组可以整理成下面的形式。

    最后那个矩阵等式,与前面的矩阵等式一对照,就会得到下面的关系。

    矩阵乘法的计算规则,从而得到证明。

  • OJ评测状态含义

    刷OJ网站时,各类提示总是要懂吧,每次只认识AC?

    1. Pending/Waiting

    排队等待中

    2. Pending Rejudge

    答案重判中

    3. Compiling

    正在编译

    4. Running/Judging

    运行判断中

    5. Accepted(AC)

    程序通过

    6. Compile Eror(CE)

    编译错误

    7. Wrong Answer(WA)

    答案错误

    8. Runtime Error(RE)

    运行时错误

    9 . Time Limit Exceeded(TLE)

    超出时间限制

    10. Memory Limit Exceeded(MLE)

    超出内存限制

    11. Output Limit Exceeded(OLE)

    输出超过限制

    12. Presentation Error(PE)

    输出格式错误

    13. Unknown Error(UKE)

    未知错误

  • 逆元

    什么是逆元?

    乘法逆元:

    • 模p意义下,一个数a如果有逆元x,那么除以a相当于乘以x。
    • 在模n的意义下,a存在逆元的充要条件是**n不等于1,且(a,n)互质。怎样求逆元?
    1. 费马小定理(有限制)
      =》p为素数时,a关于mod p的逆元为a^(p-2)mod p。用快速幂模。
    2. 扩展欧几里得算法(普遍适用)
    • 给定模数n,求a的逆元
    • 即ax=1(mod n)
    • =》ax-ny=1
    • 所以可用扩展欧几里得, ax+by=gcd(a,b)求逆元,即求x的值。注意:存在逆元的判断条件是 a,m互质
    if(gcd(a,m) != 1)       //a,m不互质,则不存在逆元
     cout << "Not Exist" << endl;
     else
     {
          ext_gcd(a, m, x, y);
          LL ans = (x<=0) ? (x%m+m) : x;  //有可能x是负数,x要先取模再加
          cout << ans << endl;

  • NOIP提高组(CSP-S)复赛知识点汇总

    基础算法

    贪心

    枚举

    分治

    二分答案

    倍增

    *构造

    高精

    模拟

    *分数规划

    图论

    图论入门

    最短路算法

    单源最短路:从一个点到其他所有点的最短路

    算法:Dijkstra、spfa、

    多源最短路:从所有点到另外点的最短路

    算法:Floyd

    差分约束

    最小生成树(kruskal、prim)

    并查集(扩展域)

    拓扑排序

    二分图染色

    *二分图匹配

    tarjan找scc、桥、割点,缩点

    LCA

    树的直径、树的重心

    dfs序

    *树链剖分

    数论

    gcd、lcm

    埃氏筛法

    exgcd,求解同余方程、逆元

    快速幂

    *组合数学

    矩阵

    *高斯消元

    数据结构

    链表

    队列(单调队列)、栈(单调栈)

    st表

    hash表

    线段树、树状数组

    字典树

    *分块

    *平衡树

    *主席树

    *莫队

    动态规划

    背包DP

    树形DP

    记忆化搜索

    递推

    区间DP

    序列DP

    *概率DP

    *DP优化(不涉及斜率优化、四边形不等式等等)

    搜索

    暴搜(dfs、bfs)

    搜索的剪枝

    启发式搜索(A∗)

    迭代加深搜索、*IDA∗

    *随机化搜索

    其他算法

    STL的基本使用方法

    脑洞的正确使用方法

    *KMP

    *状态压缩

    *AC自动机

  • CCF开启NOI Online培训

    CCF先后在3月和4月举办了两场NOI Online能力测试,第三场测试将于5月24日举行,这给受疫情影响训练中断的学生提供比赛锻炼和交流机会,这是NOI新开创的一种形式。

    CCF没有止步,紧接着,将开启NOI Online培训!

    CCF首次Online培训定于5月5日推出,为学生提供学习的机会,与Online能力测试相互呼应。Online培训课程主要面向中小学生。

    Online培训每周推出一期,每期邀请两位具有NOI钻石或金牌教练资质的老师讲授。培训内容将结合《CCF中学生计算机程序设计系列教材》和《CCF青少年计算机程序设计评价标准》,从零基础入门、基础、提高再到专业知识,由浅入深、循序渐进。

    Online培训首期邀请到了两位教师均荣获NOI钻石教练称号,其训练的学生获得过IOI金牌,他们是湖南长沙雅礼中学朱全民老师及广东中山纪念中学宋新波老师。

    关于培训讲师,CCF采取邀请和公开征集的形式。不论你是教师或学生,只要感兴趣,愿意和大家分享,欢迎加入讲师队伍,咨询邮箱noi@ccf.org.cn。

    讲师介绍

    朱全民

    朱全民

    CCF会员。长沙市雅礼中学正高级教师,湖南省特级教师,长沙市信息技术工作室首席名师兼农村名师工作站站长,雅礼中学信息学奥赛奠基人,NOI钻石指导教师,曾获2016年度CCF卓越服务奖;指导学生获得国际信息学奥林匹克竞赛(IOI)6金1银,带领雅礼信息学教练团队指导学生获IOI奖项3金1银。他是《CCF 青少年计算机程序设计评级标准》课题主持人,《CCF 中学计算机程序设计》系列教材的总体构架和编审负责人。

    宋新波

    宋新波

    CCF理事。中山纪念中学信息学竞赛教练,NOI钻石指导老师,CCF杰出演讲者;指导学生获全国青少年信息学奥林匹克联赛(NOIP)一等奖近500人次,全国决赛(NOI)金牌22枚、银牌22枚、铜牌13枚,25人次入选国家集训队,3人入选国家队,获国际信息学奥林匹克竞赛(IOI)金牌2枚、国际银牌1枚。他先后获得“中山市十大杰出青年”、“中山市十杰市民”、“南粤优秀教师”、“广东省五一劳动奖章”、“全国优秀教师”等荣誉称号。

    转载 https://www.ccf.org.cn/Focus/2020-05-05/700814.shtml

  • Windows 10 更新补丁汇总合集

    Windows 10 version 1909 & 1903 (Build 18363 & 18362) 更新发布日期备注
    Windows10-KB4550945-x64Windows10-KB4550945-x862020-04-20适用于 Windows 10 1909 的积累更新
    Windows10-KB4552152-x64Windows10-KB4552152-x862020-04-10安全更新程序
    Windows10-KB4537572-x64Windows10-KB4537572-x862020-02-25.NET Framework 3.5 和 4.8 的累积更新
    Windows10-KB4537759-x64Windows10-KB4537759-x862020-02-10Adobe Flash Player 安全更新程序
    Windows 10 version 1809 (Build 17763) 更新发布日期备注
    Windows10-KB4550969-x64Windows10-KB4550969-x862020-04-20适用于 Windows 10 1809 的积累更新
    Windows10-KB4549947-x64Windows10-KB4549947-x862020-04-10安全更新程序
    Windows10-KB4537480-x64Windows10-KB4537480-x862020-02-24.NET Framework 3.5 和 4.8 积累更新
    Windows10-KB4537759-x64Windows10-KB4537759-x862020-02-10Adobe Flash Player 安全更新程序
    Windows10-KB4486153-x64Windows10-KB4486153-x862020-01-09Microsoft .NET Framework 4.8
    Windows 10 version 1803 (Build 17134) 更新发布日期备注
    Windows10-KB4550944-x64Windows10-KB4550944-x862020-04-20适用于 Windows 10 1803 的积累更新
    Windows10-KB4540724-x64Windows10-KB4540724-x862020-03-09关键更新程序
    Windows10-KB4537759-x64Windows10-KB4537759-x862020-02-10Adobe Flash Player 安全更新程序
    Windows10-KB4486153-x64Windows10-KB4486153-x862020-01-09Microsoft .NET Framework 4.8
    Windows 10 version 1709 (Build 16299) 更新发布日期备注
    Windows10-KB4550927-x64Windows10-KB4550927-x862020-04-10适用于 Windows 10 1709 的积累更新
    Windows10-KB4541731-x64Windows10-KB4541731-x862020-03-09更新程序
    Windows10-KB4537759-x64Windows10-KB4537759-x862020-02-10Adobe Flash Player 安全更新程序
    Windows10-KB4486153-x64Windows10-KB4486153-x862020-01-09Microsoft .NET Framework 4.8
    Windows 10 version 1703 (Build 15063) 更新
    生命周期结束
    Windows 10 version 1607 (Build 14393) 更新
    生命周期结束
    Windows 10 version 1511 (Build 10586) 更新
    生命周期结束
    Windows 10 扩展更新发布日期备注
    WindowsTH-RSAT_WS_1803-x64WindowsTH-RSAT_WS_1803-x862018-05-02适用于 Windows 10 的远程服务器管理工具(RSAT for Windows 10)
    WindowsTH-RSAT_WS_1709-x64WindowsTH-RSAT_WS_1709-x862018-05-02
    Windows10-KB4057437-x64Windows10-KB4057437-x862019-05Version 1903Media Feature Pack(针对 N 及 KN)
    Windows10-KB4134255-x64Windows10-KB4134255-x862018-10Version 1809
    Windows10-KB4057437-x64Windows10-KB4057437-x862018-04Version 1803
    • 没有列出的更新表示已过期,可以不用安装。
    • Windows 10「功能更新」与「质量更新」之间的区别
    • 合集会随微软发布更新进行定期更新,建议大家收藏链接。
    • Windows 10 更新补丁合集的所有补丁都源链到微软官方下载网站,大家可以放心下载。
    • 「积累更新」都链接到完整包(非 Delta 更新),可以直接安装最新包,不用逐步升级安装。
    • Windows 10 更新补丁合集只用于收集 Windows 10 更新补丁,方便用户手动下载安装和管理员下载分发。