当前位置: 首页 > news >正文

GTM4.1-SPE

一、简介

        SPE——Sensor Pattern Evaluation ,主要是用来检测霍尔电流从而控制无刷电机。输入使用TIM模块,输出使用TOM模块,中间可以通过MAP给DPLL计算角速度。

        简图如下,为了尽快的研究明白就放弃了DPLL相关的部分。

        通过图可以看到两个TIM模块是一组,以TIM0/1为例可以使用ch0、1、2或3、4、5进行采集,送到SPE0/1,TIM1的ch6、7进行作为快速关断信号,可通过对应通道的电平进行模块输出关断。SPE最终通过TOM进行输出。

二、SPE的工作模式与细节

1、采集霍尔的方向或角度

        SPE可以通过采集霍尔的电平获得对应的角度信息,见下图,最里面是x相,最外侧是z相。

       

        6个角度,分别是100 − 110 − 010 − 011 − 001 − 101 − 100。当采集的角度变化后,SPE会控制输出模块连接到对应的TOM上。

2、连接简图

        注意:可以同时插入死区使用的有TOM的ch2、6、7、8、9。

        SPE与TOM某块的连接如下图:

       

        首先左侧中间TIM信号可以选择使用TIM0或者TIM1,FSOI是快速关断信号;

        SPE_DIR表示方向,即正反转;

        SPE_NIPD表示三相霍尔角度发生变化;

        SPE_NIPD_NUM表示变化计数;

        右侧的TOM0和TOM1都可以把其SCOUR信号输出到SPE,主要是用于连接到SPE_OUT上,当然最终SPE_OUT也会反馈到对应的控制TOM上;

        TOM_CH_TRIG_CCU可用来更新触发SPE的相关信号;

        SPE_OUT当然可以连接到任意的TOM通道上,用于输出;

        SPE_NIPD也是用于触发连接到TOM上,TOM综合其他的信号进行一些周期、占空比调整;需要查看一下TOM寄存器

3、SPE内部结构

       

        把这张图搞清楚后,SPE就基本弄懂了。下面来详细讲解各个部分。

1)左上

        SPE的输入可以有几组TIM信号,通过TIM_SEL进行选择,分别可以选择TIM0\1\2\3\4\5的ch0~2或3~5;

        TIM采集的信号会传入到NIP中,NIP表示最新采集的数据,AIP表示当前的数据,PIP表示之前的数据。当采集到新数据时,NIP会传给AIP,AIP会把之前的数据传输给PIP;当出现了NIP=PIP时,认为转动方向发生了变化;

2)左中、下

        SPE_PAT表示采集到霍尔的电压值/电平值,一共8组,最下面的两组无效。其中每组占用4bit,前3bit表示霍尔的电平,最后一个表示此PAT是否有效;

        DIR表示方向,SPE_PAT_PTR和SPE_PAT_PTR_BWD是两组指针,分别用于指示SPE_OUT_PAT。这两组指针分别根据DIR的值在霍尔电平发生变化时更新;DIR的方向可以通过CMD对应的寄存器进行切换,切换时ch2、6、7、8、9可以插入对应的死区;

3)中部

        SPE_NIPD在SPE_PAT变化时会根据DIR进行±1操作,SPE_REV_CNT可以为其进行计数,并有SPE_REV_CMP进行比较,当与比较值匹配时可产生中断;

        SPE_OUT_PATx中存放的是控制消息,用于输出给SPE_OUT_CTRL,进而利用其对应的寄存器设置值控制把TOM[i]_CH0、TOM[i]_CH1、0、1的信号传输给SPE_OUT;

        SPE_PAT_PTR和SPE_PAT_PTR_BWD是指向SPE_OUT_PATx的正反两个指针,可以使用CTRL_CMD控制使用哪个指针去选择对应的SPE_OUT_PATx进行传输;

        SPE_NIPD如上;

        SPE_NIPD_NUM用于记录变化次数;

        SPE_DIR用于记录方向;

4)右下

        TRIG_SEL和ETRIG_SEL用于选择使用哪个trig信号进行SPE_OUT的信号更新,trig信号包括SPE_NIPD、TOM_CH0_TRIG_CCU0/1、TOM_CH2\6\7\8\9_TRIG_CCU1;

        中间有一个寄存器设置的控制信号SPE_UPD_TRIG,用于开启trig,如果不开启SPE_OUT_CTRL就会一直不变;

5)右中、上

        SPE_OUT_PATx经过层层trig选择,最中到达了SPE_OUT的输入选择器,但仍有一信号与其竞争,就是FSOL,这是一个寄存器设置的快速关断信号,1表示关断;

        选择器连接着右上角的另外一个选择器,其由FSOM控制,FSOM是快速关断使能信号,他可以配置是否开启这个快速关断的功能。

        最后,信号输出到了SPE_OUT。

        总结:

1)TIM采集三相霍尔的信号放到SPE_PAT中,根据采集的PAT信号并结合DIR调整SPE_PAT_PTR和SPE_PAT_PTR_BWD两个指针,通过CTRL_CMD选择一个指针,根据指针选择不同的SPE_OUT_PATx;

2)通过TRIG\ETRIG_SEL来选择触发SPE_OUT_PATx传输到SPE_OUT中的触发源。触发源可以是TOM的CCU trig信号,也可以是SPE_NIPD(霍尔电平变化检测器)。当然除了选择触发源外,还有一个SPE_UPD_TRIG的开关,用于开启触发功能;

3)SPE_OUT_PATx内存放了8组数据,用于选择8组SPE_OUT的信号源,分别是TOM_CH0、TOM_CH1、0和1;

4)在SPE_OUT输出前,有快速关断功能,FSOM是使能信号,FSOL是软件启动快速关断;

5)此外,SPE_REV_CTN是24bit计数器,根据DIR方向在产生SPE_NIPD时进行±1操作,SPE_REV_CMP可设置比较值,当匹配时可产生中断;

6)注意,NIP\AIP\PIP三个存放APT指令的寄存器也可用于判断抖动,比如当NIP=PIP表示了方向变化,如果再次出现即表示抖动;

4、SPE中断

        SPE有以下中断,为测试方便,SPE模块有强制产生中断的模式,用于产生对应的中断。

flag示意
SPE_NIPD霍尔输入变化标志
SPE_DCHGSPE的方向发生变化标志
SPE_PERR错误或者无效的SPE标志
SPE_BIS抖动
SPE_RCMPSPE的计数器达到比较值

         中断还是GTM得老路子,分为四种,分别是电平模式、脉冲模式、脉冲通知模式、单次脉冲模式;

三、TOM模块需要的配置

1、TOM[i]_CH[x]_CTRL.SPEM

        开启后TOM就被SPE_OUT控制;

2、TOM[i]_CH[x]_CTRL.SPE_TRIG

        用来选择TOM_CH_OUT的输入源和复位源,寄存器写的有些乱,没看太懂,需要具体测试;

3、TOM[i]_CH[x]_CTRL.OSM

        打开one-shot模式,CM0是周期值,从写入访问CN0启动;

四、其他

        1)可以通过查阅寄存器判断霍尔是否损坏(忘记哪个);

        2)客户通过SPE[i]_CTRL_STAT.SIE[k]关闭单个输入;

        3)看TIM章节,认为TIM_CHx(48)就是TIM的F_OUT,即经过滤波后的电平信号,与DTM使用章节相同;

相关文章:

  • 在 LangChain 中集成 Mem0 记忆系统教程
  • 5月22日复盘-YOLOV5
  • go中len和sizeof区别
  • PT8P2104触控型8Bit MCU
  • Linux Systemd 管理java服务
  • 打卡第二十五天:元组和OS模块
  • 深搜题(如何找到进入下一层深搜的条件)
  • Android 网络全栈攻略(三)—— 从三方库原理来看 HTTP
  • 【Java高阶面经:数据库篇】17、分库分表分页查询优化:告别慢查询与内存爆炸
  • 并发编程之常用原子类
  • 蓝桥杯 10. 安全序列
  • yolo剪枝的几种方法
  • 链表day4
  • RT-Thread源码阅读(1)——基本框架
  • 阿里云 Serverless 助力海牙湾构建弹性、高效、智能的 AI 数字化平台
  • 配置gem5环境:Dockerfile使用
  • SQL的RAND用法和指定生成随机数的范围
  • labview实现两路波形图数据采集
  • DeepSeek快速搭建个人网页
  • 搭建在线教育系统的完整流程:源码选择、功能集成与上线部署指南
  • html国外网站源码/百度搜索引擎入口登录
  • 想在微信公众号上做网站链接/自媒体论坛交流推荐
  • 网站设计策划案/谷歌查询关键词的工具叫什么
  • wordpress新闻网站主题/关键词优化推广公司哪家好
  • 免费手机端网站模板下载/百度指数名词解释
  • 注册成立一个公司需要多少钱/福州百度seo