历史上的今天
返回首页

历史上的今天

今天是:2026年02月02日(星期一)

正在发生

2023年02月02日 | 基于LPC2214和S3C44B0X实现PCB钻床控制器的设计

2023-02-02 来源:elecfans

1.引言

印刷电路板钻床是印刷电路板生产中的重要装备,随着电子产品加工要求的提高,低档的基于单片机的PCB 钻床控制器已经很难满足要求。ARM7TDMI 是20 世纪末ARM 公司提出的一种32 位的RISC 微控制器结构, 基于该内核的芯片种类丰富,具有运行速度高,功耗小和价格低的特点。本文介绍了一种基于双ARM 结构的PCB 钻床控制器,它既解决传统低档钻床控制系统性能不高的缺点,同时又具有很高的经济性,是高档PCB 钻床理想的控制器。


数控系统按结构分,一般有单 CPU 和多CPU 之分。单CPU 一般采用集中控制分时处理的方式完成数控系统的各项任务。它具有结构紧凑的特点,但是功能相对比较简单。多CPU 结构的数控系统采用多CPU 并行处理,可以使系统达到更高的性能。多CPU 一般采用共享总线或共享存储器方式进行通信。钻床控制器的控制对象比较复杂:需要控制4套松下MINAS交流伺服系统,4个主轴电机以及9路开关量输入,11路继电器输出。如果控制器采用单CPU结构,控制器需要扩展较多硬件,增加系统成本,降低了系统可靠性;如果控制器采用双CPU结构,控制器可以根据功能进行分层设计:将信息处理量大的人机交互系统任务交由一个CPU负责,而机床运动控制交由另一个CPU来处理。这样减少了外扩硬件的数量,降低了成本,提高了可靠性。具体是指:控制器用三星公司生产的S3C44B0X作为人机交互系统的CPU,用飞利浦公司生产的LPC2214作为机床运动控制系统的CPU。


2.控制器的硬件设计

控制器由系统板和接口板组成:系统板是由LPC2214 和S3C44B0X 及其相关外围电路构成的,是控制器的核心;接口电路板主要负责系统板和机床电器之间的驱动,电平匹配。系统的硬件结构参考图1。

基于LPC2214和S3C44B0X实现PCB钻床控制器的设计

图1 控制器硬件结构图

2.1 控制器系统板硬件设计

控制器系统板由两个子系统组成:人机交互系统和机床运动控制系统。人机交互系统和机床运动控制系统通过I2C 总线进行数据交换。I2C 总线是飞利浦公司提出的串行总线,具有速度较高,硬件连接十分简单,无需增加硬件的特点。


2.1.1 控制器人机交互系统的硬件设计

控制器人机交互系统采用 S3C44B0X 为核心,扩展一系列硬件,构成一个具有完善的人机交互功能的系统。系统扩展了一片具有16 位数据宽度,2MB 的存储空间的NOR 型Flash 存储器芯片SST39VF1601 作为系统程序存储器。为了提高系统程序的执行速度,我们扩展了一片1M*4Bank*16I/O 的HY57V641620 型SDRAM。系统一上电,系统初始化程序就把SST39VF1601 中存储的系统程序拷贝到HY57V641620 中,同时,系统程序的数据存储区也在HY57V641620 中,这样系统程序可以完全在SDRAM 中运行。为了保证机床钻孔文件在机床停电后仍然能够保存,系统扩展了一片16MB Nandflash 芯片K9F2808 作为系统的电子硬盘。由于S3C44B0X 自带液晶显示控制器,所以系统选用三菱公司生产的不带液晶显示控制器的STN 型256 色640x480 像素的EDMGRB8KHF 液晶显示模块作为机床信息的输出。系统操作信息的输入采用PS/2 键盘。系统通过RS232 串口从PC 机上下载钻孔文件。为了方便系统调试程序,人机交互系统设计了一个JTAG 口。


机床的一些重要的参数例如像机床进给轴丝杠的螺距,交流伺服系统的脉冲当量等数据需要永久保存,所以系统扩展了一片512B 的基于I2C 总线的EEPROM 芯片AT24C04 。机床人机交互系统电路结构如图1 控制器系统板中以S3C44B0X 为中心的硬件结构。


2.1.2 机床运动控制系统硬件设计

机床运动控制系统的核心是 LPC2214 微控制器。LPC2214 内部自带256KB 的flash存储器和16KB 的SRAM,无需外扩程序存储器和数据存储器。系统设计了一个RS232串口,用于LPC2214 系统程序的ISP 下载。为了便于调试程序,运动控制系统设计了一个JTAG 口。机床运动控制系统电路结构如图1 控制器系统板中以LPC2214 为中心的硬件结构。机床电器都通过接口电路直接与LPC2214 相连。其引脚分配如下所示:

2.1.3 人机交互系统和机床运动控制系统的通信

数控系统的加工指令经过S3C44B0X 的处理后要传给LPC2214 进行执行,而LPC2214执行的结果要返回给S3C44B0X 进行处理和显示。系统采用I2C 总线进行通信。S3C44B0X工作在主器件模式,而AT24C04 和LPC2214 工作在从模式。AT24C04 的从地址是0xa0,LPC2214 的从地址是0x50,I2C 的速率为400KHz。S3C44B0X 和LPC2214 各自建立一个24 字节的全局数组进行通信。


3.软件设计

软件部分主要由人机交互系统软件和机床运动控制系统软件组成。人机交互系统软件结构比较复杂,所以软件移植了μC/OS-II 操作系统。机床运动控制系统软件结构比较简单,但是这部分软件有很强的实时性要求,所以软件没有移植操作系统,而是采用时间触发模式编写。


3.1 人机交互系统软件设计

人机交互系统软件采用分层方式进行编写。软件分为系统层和应用层。系统层设计的主要任务是首先进行嵌入式操作系统μC/OS-II 移植,然后再对操作系统内核进行扩展,形成一个简单高效的平台。应用层设计是在这个平台的基础上实现加工文件的操作,机床手动加工,机床自动加工,机床参数设置等任务。


系统层以μC/OS-II 操作系统内核为基础进行移植和扩展。所谓移植,是指通过编写一定代码,使得操作系统能够在特定的处理器平台上运行。根据μC/OS-II 的说明,移植包括对与处理器相关的OS_CPU.H,OS_CPU_A..ASM,OS_CPU_C.C 三个文件中的代码进行移植[4]。在μC/OS-II 提供的内核基础上,通过设计驱动程序模块,系统任务,操作系统的API 函数和任务调度模块等对操作系统内核进行扩展。通过设计实现LCD,键盘,K9F2808,I2C 总线和串口通信等的接口函数,建立驱动程序模块,使操作系统API 函数和底层硬件分开。系统任务部分设计了LCD 刷新任务,键盘读取任务,I2C 总线读写任务这三个基本任务,并随着操作系统的启动而运行。


应用层在系统层提供的 API 函数的基础上,设计了主任务和机床手动加工,自动加工,文件传输,参数设置等任务。系统的入口函数Main 函数流程如图2 所示。主任务函数结构如图3 所示:

3.2.LPC2214 程序设计

机床运动控制系统控制程序结构比较简单,程序模块间相对独立,但是实时性要求很高。由于嵌入式实时操作系统会占用一部分系统资源,影响系统的实时性,增加系统设计难度,所以,我们没有移植嵌入式实时操作系统,而是使用简单时间调度方式。使用该调度方式可以使程序具有较好的健壮性和稳定性。系统采用定时器来产生系统调度的节拍,利用定时器中断程序进行调度。系统使用定时器0 产生系统的节拍,定时周期为1ms。系统利用PWM控制器的中断和四个比较寄存器控制交流伺服系统进给脉冲的生成。我们把任务分成两类:一类为周期任务,另一类为非周期任务。每一个任务都有一个任务控制块,任务控制块的数据结构如下:

typedef data struct

{void (*P_task)(void); //指向任务的指针

unsigned int Delay; //延时时间

unsigned int Period; //任务再次运行的间隔时间

unsigned int run; //任务需要运行的次数

}task;

任务控制块包含了任务被调度的重要信息:任务是周期任务还是非周期任务,以及任务在何时运行,任务准备就绪的标志等。控制系统的主要任务有:X 进给轴脉冲发送任务,Y 进给轴控制任务,Z1 进给轴控制任务,Z2 进给轴控制任务,主轴电机控制任务,换刀任务等。


4.结束语

在控制器方案考虑和设计中,我们充分考虑了嵌入式系统对功耗,成本和尺寸的敏感性。基于I2C 的双ARM 结构的钻床控制器具有性能优良,系统集成度高,性能可靠,人机交互友好,可扩展性好的特点,相对于传统的基于单片机的钻床控制器在性能上有很大的提高。本设计为嵌入式系统在印刷电路板控制器中的应用提供了新的思路,具有较好的应用价值。


推荐阅读

史海拾趣

Gowanda Electronics公司的发展小趣事

对于连续可调直流稳压电源电路,网友可能会有多个方面的问题,以下是一些常见问题及其解答:

一、技术原理与性能参数

  1. 问:连续可调直流稳压电源电路的工作原理是什么?
    : 连续可调直流稳压电源电路的工作原理主要是通过扩展开关电源的电压和电流容量,采用高频调制技术,将输入的交流电转换为直流电,并通过调节电路使输出电压稳定在一个可调范围内。其内部包含整流、滤波、稳压等多个环节,以提供稳定且可调的直流电压输出。

  2. 问:如何选择合适的连续可调直流稳压电源?
    : 选择连续可调直流稳压电源时,需要考虑的主要因素包括所需电压范围、电流容量、稳压精度、纹波噪声、保护功能等。同时,也需要根据应用场景考虑电源的体积、重量、散热性能等因素。

二、使用与维护

  1. 问:在使用过程中,输出电压不稳定怎么办?
    : 如果输出电压不稳定,可以首先检查电源输入电压是否稳定,使用稳压电源或变压器等辅助设备来保持输入电压的稳定。其次,检查输出端电压设置是否正确,确保输出电压值在设定范围内。最后,检查电源输出端负载是否符合规定,避免负载过重或过轻导致输出电压波动。

  2. 问:如何对连续可调直流稳压电源进行日常维护?
    : 日常维护主要包括检查电源输入输出线路的连接是否牢固,清洁电源外壳和散热风扇上的灰尘,以及定期检查电源的工作状态和性能指标。如果发现异常或故障,应及时进行处理或更换损坏的部件。

三、故障排查与解决

  1. 问:电源无法输出电压或电流怎么办?
    : 如果电源无法输出电压或电流,可以首先检查电源输入电压是否正常,电源本身是否损坏。其次,检查电源输出端连接是否正确,是否存在开路或短路的情况。最后,检查电源是否过载或短路,确保电源在正常工作范围内。

  2. 问:电源输出电压波动大怎么办?
    : 输出电压波动大可能是由于电源输入电压不稳定、输出端负载不匹配或存在电磁干扰等原因造成的。解决方法包括稳定输入电压、匹配适当的负载、检查并消除电磁干扰源等。

四、扩展与升级

  1. 问:如何扩展连续可调直流稳压电源的电压和电流范围?
    : 扩展电压和电流范围通常需要根据具体的电源设计来进行。一般来说,可以通过更换更高功率的整流管、滤波电容和稳压元件等方式来提升电源的电压和电流容量。同时,也可以通过增加并联或串联电路的方式来实现电压和电流的分档调节。

  2. 问:如何进行电路的升级和改造?
    : 电路的升级和改造需要根据实际需求和技术能力来进行。在升级过程中,需要注意保持原有电路的稳定性和可靠性,避免引入新的故障点。同时,也需要关注新技术的发展和应用,以便在升级过程中采用更先进、更高效的电路设计方案。

以上是针对连续可调直流稳压电源电路的一些常见问题及其解答。希望这些信息能够对网友有所帮助。

CLAIREX公司的发展小趣事

为了进一步扩大市场份额,Clairex开始积极寻求与各大企业的合作。他们与多家知名航空公司、电子设备制造商等建立了长期稳定的合作关系,为其提供高质量的电子部件和解决方案。同时,Clairex还积极参加各类行业展会和交流活动,与业界同行分享经验、探讨合作。这些举措不仅提升了Clairex的品牌知名度,也为其带来了更多的商业机会。

HB公司的发展小趣事

背景:Fritz Hartmann Gerätebau KG成立于1961年,起初专注于电子元器件的研发与生产。随着技术的不断积累和市场的逐步拓展,公司业务逐渐壮大,并更名为Hartmann Codier GmbH。这一时期,公司凭借对开关技术的深刻理解,逐步在行业内建立了良好的声誉。

发展:在初创阶段,Hartmann Codier GmbH致力于提升产品质量和技术水平,通过不断的技术创新和产品优化,逐渐在旋转编码开关和微动开关领域占据了一席之地。同时,公司也积极拓展国内外市场,为后续的快速发展奠定了坚实的基础。

中科银河芯(GXCAS)公司的发展小趣事
三极管在饱和状态下的集电极-发射极压降(Vce)会影响输出信号的低电平值。
启臣微(Chip)公司的发展小趣事

在人才方面,启臣微一直把人才作为公司发展的核心驱动力。公司建立了一套完善的人才培养机制,为员工提供广阔的职业发展空间和良好的工作环境。同时,公司还积极引进国内外优秀人才,为公司的创新发展注入了新的活力。这些优秀人才的加入,不仅提升了公司的技术水平和管理能力,也为公司的发展注入了新的动力。

Bias Power公司的发展小趣事

Bias Power公司深知研发实力是企业发展的核心。因此,公司投入大量资源用于研发工作,建立了完善的研发团队和实验设施。通过不断的技术创新和研发投入,Bias Power公司成功推出了一系列具有竞争力的新产品,巩固了其在电子行业的领先地位。

同时,公司还注重知识产权的保护,积极申请专利,保护其核心技术不被侵犯。这些专利的申请和授权不仅提升了公司的技术实力,还为公司的发展提供了有力保障。

问答坊 | AI 解惑

ARM 嵌入式系统开发综述 ARM 开发工程师入门宝典

ARM 嵌入式系统开发综述 ARM 开发工程师入门宝典 .pdf…

查看全部问答>

想专心做开关电源,请问用何种仿真软件;

最近要做一个开关电源,需要用到仿真,请问PSPICE怎么样,听说很难做闭环的仿真,因为许多芯片没有(比如TL494),而芯片公司很多也没有给出仿真模型,听说SABER可以做芯片级的仿真,请问有没有人熟悉SABER软件,请大家给个建议; 目前我主要做反 ...…

查看全部问答>

5V转正负12V.给一个霍尔元件提供参考.怎么做 比较好?

第一次自己画板子 不想用那么多现成的DCDC.想找个电路.找了一晚上也没发现什么好的方案.这个霍尔元件也没用过.型号是TBC25C04/TBC50C04型霍尔电流传感器  网上资料也不多.高手们帮帮忙.给点意见吧…

查看全部问答>

谁做过两块DE2板子相互收发数据的项目,求指导!

谁做过两块DE2板子相互收发数据的项目,比如在一块板上按一下按键,另一块板的灯亮一下或者响一下,其中涉及Dm9000的驱动,谁做过或者会做的大侠,指导一下最好发个工程文件过来看看QQ:853213132qq@.com,小弟感激涕零!…

查看全部问答>

G2系列批量烧录工具

 请教专家 MSP430G2系列大家都是用什么烧录工具?…

查看全部问答>

怎样在IAR-ARM下使用ULINK2

IAR-ARM默认调试工具不包含ARM-ULINK2,怎样在IAR下添加ULINK2调试工具?…

查看全部问答>

跪求解释此硬件电路~~~~~

原文:由于轮椅控制器采用的是双极性模式,有四个功率管:T1、T2、T3、T4,其中 T1 和 T4 的 PWM 脉冲信号是相同的,T2 和 T3 的 PWM 脉冲是相同的,T1 与 T2 的 PWM& ...…

查看全部问答>

AM335x的启动问题,坐等高手科普!

手上有一块beaglebone的板子,也做了一些实验,这是前言现在我的需求是,希望能从NOR Flash启动AM335x,当然beaglebone是无能为力了。根据TRM上所述,有两种方式,一个是MEM启动选择XIP方式,还有一种是FEB(快速外部启动)。然后问题就来了!如果 ...…

查看全部问答>

LaunchPad学习心得

拿到板子很高兴。自己做单片机很多年了,从来没有使用过MSP430系统。现在最看好的就是430的低功耗了。自己手上有个项目,具体功能已经实现,但最后老板要求实现低功耗,单片机用的是Mega8 ,用了很多方法,好不容易最到了6ma(5v功电,工作10ms,停止 ...…

查看全部问答>

端午节三天只休息了一天

换工作一定要慎重,一定不要找加班太猛的,已经连续加班三个月的苦逼日子不知道还要多久。。。。。。。。。。。。。。。。。。。。。。。 …

查看全部问答>