光伏比赛总结

举报
dz小伟 发表于 2022/11/13 13:35:48 2022/11/13
【摘要】 1、逐日 1.1、STC的io口工作模式舵机用推挽模式,按键开漏模式 1.2、按键的硬件消抖按键并联一个电容,可以实现硬件消抖下图是对比 1.3、舵机1.舵机由脉冲控制的2.程序用定时器,做脉冲发生器。 1.4、光敏1.需要较强的光才可以触发2.有光信号线变低电平,否则反之3.单片机i/o口检测电平,控制舵机 1.5、太阳能板1.ADC转换,把模拟信号转换为数字信号2.比较东南西北光强度,...

1、逐日

1.1、STC的io口工作模式

舵机用推挽模式,按键开漏模式
在这里插入图片描述

1.2、按键的硬件消抖

按键并联一个电容,可以实现硬件消抖
下图是对比
在这里插入图片描述
在这里插入图片描述

1.3、舵机

1.舵机由脉冲控制的
2.程序用定时器,做脉冲发生器。

1.4、光敏

1.需要较强的光才可以触发
2.有光信号线变低电平,否则反之
3.单片机i/o口检测电平,控制舵机

1.5、太阳能板

1.ADC转换,把模拟信号转换为数字信号
2.比较东南西北光强度,调整太阳能板

2、风光互补器

3、通讯

3.1、modbus、232、485、串口等实现

  • TTL,RS232,RS485都是电平标准(电信号),串口,COM是物理接口
  • 单片机用的是TTL电平信号
  • 各种转换过程
    USB-TTL:USB通过CH340转TTL
    USB-RS232:USB通过CH340转TTL,TTL通过MAX232转RS232
    USB-RS485:USB通过CH340转TTL,TTL通过MAX485转RS485
  • 不管什么转换,都需要接GND不接VCC,防止供电冲突(通讯的时候,下载程序要断电下载)

4、编程思路

4.1、逐日

1.实现功能:
上电复位太阳能板水平向上,
进入模式1(默认模式)东led指示灯常亮,利用太阳能板,被动跟随光源,并且向哪个方向转动哪个方向的led闪烁
短按(时间小于1s)按键,进入模式2,南led指示灯亮,被动通过光敏跟随光源
再次短按(时间小于1s)按键,进入模式3,西led指示灯亮,主动跟随光源(各种转动)

  • 各种模式下

长按(时间大于1s)按键,北指示灯亮,太阳能板水平向上,停止工作
再次长按(时间大于1s)按键,进入模式1
2.程序编程思路
1.所有的/o口定义
2.定时器0,做舵机的脉冲发生器
3.定时器1,用作按键长按,短按
一个全局变量t,按下按键变量清零,开始计时,松开按键判断时间
4.按键实现
短按变量a++
长按k取反,实现停止
5.模式切换用switch
if里面嵌套switch,目的判断k,控制短按长按是否停止
一个全局变量a,按键按下一次变量++
6.按键放入位置
放switch里
有些模式可能会在死循环里,在死循环里放按键,判断if(a!=2||k!=1)return 0;实现跳出循环

4.2、风光互补器

4.3、通讯

1.实现功能:
1.PLC控制风光互补器,实现模式切换,数据输入(风速),数据读出(电压)
2.PLC控制逐日实现,模式切换,控制东南西北转动
3.逐日控制风光,切换模式
2.程序编程思路
1.利用modbus通讯协议,给风光传数据和读数据(485)
2.风光作为中间媒介,PLC发数据给风光,风光在发给逐日(485、232)
3.利用232通讯接口,串口通讯,实现传数据

5、注意事项

1.检查单片机硬件接线和按钮是否损坏。
2.光敏和太阳能从上到下依次北南西东,舵机上面接舵机2,下面接舵机1。(按任务书接)
3.认真读题,不能遗漏任何内容。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。