1. 运动功能说明
本文示例将实现R330样机机器鱼胸鳍能够灵活的上下摆动的功能。
2. 结构说明
本样机采用舵机模块来进行仿生机器鱼结构的设计。
胸鳍
整机
在这个示例中,我们采用了以下硬件,请大家参考:
主控板 | Basra主控板(兼容Arduino Uno) |
扩展板 | Bigfish2.1扩展板 |
电池 | 7.4V锂电池 |
电路连接:将舵机连接在Bigfish扩展板的D4端口。
4. 运动功能实现
编程环境:Arduino 1.8.19
下面提供一个机器鱼胸鳍上下摆动的参考例程(fishQi.ino),例程源代码详见(https://www.robotway.com/h-col-236.html),实验效果可参考网站演示视频。
/*------------------------------------------------------------------------------------ 版权说明:Copyright 2023 Robottime(Beijing) Technology Co., Ltd. All Rights Reserved. Distributed under MIT license.See file LICENSE for detail or copy at https://opensource.org/licenses/MIT by 机器谱 2023-05-23 https://www.robotway.com/ ------------------------------*/ #include < Servo.h > int _ABVAR_1_angle_current2 = 0 ; int _ABVAR_2_num = 0 ; Servo servo_pin_4; int _ABVAR_3_angle_current1 = 0 ; void up_down(); void down_up(); void setup() { servo_pin_4.attach(4); } void loop() { down_up(); up_down(); } void down_up() { _ABVAR_1_angle_current2 = 30 ; for (_ABVAR_2_num= 1; _ABVAR_2_num<= ( 16 ); _ABVAR_2_num++ ) { _ABVAR_1_angle_current2 = ( _ABVAR_1_angle_current2 + 5 ) ; servo_pin_4.write( _ABVAR_1_angle_current2 ); delay( 50 ); } } void up_down() { _ABVAR_3_angle_current1 = 110 ; for (_ABVAR_2_num= 1; _ABVAR_2_num<= ( 16 ); _ABVAR_2_num++ ) { _ABVAR_3_angle_current1 = ( _ABVAR_3_angle_current1 - 5 ) ; servo_pin_4.write( _ABVAR_3_angle_current1 ); delay( 50 ); } }
下面再给大家提供一个机器鱼鱼尾摆动的参考例程(fishTail.ino),大家可以尝试改写一下舵机摆动角度参数,让机器鱼尾能够灵活的摆动。
/*------------------------------------------------------------------------------------ 版权说明:Copyright 2023 Robottime(Beijing) Technology Co., Ltd. All Rights Reserved. Distributed under MIT license.See file LICENSE for detail or copy at https://opensource.org/licenses/MIT by 机器谱 2023-05-23 https://www.robotway.com/ ------------------------------*/ #include < Servo.h > int _ABVAR_1_angle_right = 0 ; int _ABVAR_2_num = 0 ; Servo servo_pin_4; int _ABVAR_3_angle_left = 0 ; void Right_Left(); void left_Right(); void setup() { servo_pin_4.attach(4); } void loop() { left_Right(); Right_Left(); } void Right_Left() { _ABVAR_1_angle_right = 70 ; for (_ABVAR_2_num= 1; _ABVAR_2_num<= ( 8 ); _ABVAR_2_num++ ) { _ABVAR_1_angle_right = ( _ABVAR_1_angle_right + 5 ) ; servo_pin_4.write( _ABVAR_1_angle_right ); delay( 100 ); } } void left_Right() { _ABVAR_3_angle_left = 110 ; for (_ABVAR_2_num= 1; _ABVAR_2_num<= ( 8 ); _ABVAR_2_num++ ) { _ABVAR_3_angle_left = ( _ABVAR_3_angle_left - 5 ) ; servo_pin_4.write( _ABVAR_3_angle_left ); delay( 100 ); } }
审核编辑黄宇
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
机器鱼
+关注
关注
0文章
11浏览量
3155
发布评论请先 登录
相关推荐
富唯智能案例|3D视觉引导机器人抓取鞋垫上下料
随着制造业对自动化、智能化需求的不断提升,如何实现鞋垫上下料的精准、高效操作成为了企业亟待解决的问题。传统的上下料方式往往依赖人工,存在效率低下、精度不足等问题。而富唯智能的3D视觉引导机器
![富唯智能案例|3D视觉引导<b class='flag-5'>机器</b>人抓取鞋垫<b class='flag-5'>上下</b>料](https://file1.elecfans.com/web2/M00/C8/55/wKgaomYTsEqAV_PAAAxnE80gSe0725.png)
机器人上下料为汽车制造车间实现高效自动化
在汽车制造领域,上下料环节一直是生产线上的重要环节,也是提高生产效率和质量的关键所在。传统的上下料方式往往依赖于人工操作,不仅效率低下,还存在安全风险。然而,随着富唯智能复合机器人的引入,许多汽车零部件制造企业成功
PLC远程上下载功能实现的基本原理
PLC远程上下载功能实现的基本原理 首先,需要一个支持PLC远程上下载的物联网网关,该网关通常具有网口、RS485、232等接口,以连接PLC和其他物联网设备。远程
labview上下限设置能用什么方法实现
在LabVIEW中,你可以使用以下几种方法来设置上下限: 使用图形编程:LabVIEW是一款图形化编程语言,你可以直接拖拽和连接不同的功能块来构建程序。对于上下限的设置,你可以使用控件库中的数值范围
机器人摆动相轨迹设计
1、摆动相轨迹设计 基于第二节中提到的原则,文献[1]中提出了一种基于复合摆线形式的轨迹规划方法,并在文献[2]中得到了验证和使用。 针对机器人足底与地面接触时会产生滑动和行走过程中拖地问题,文献
![<b class='flag-5'>机器</b>人<b class='flag-5'>摆动</b>相轨迹设计](https://file1.elecfans.com/web2/M00/B0/12/wKgaomVdeG-AHQvpAAAhxrQgcT8897.jpg)
为什么要测试芯片上下电功能?芯片上电和下电功能测试的重要性
为什么要测试芯片上下电功能?芯片上电和下电功能测试的重要性 芯片上下电功能测试是集成电路设计和制造过程中的一个重要环节。它是确保芯片在正常
视觉引导机器人上下料系统有哪些优势?
视觉引导机器人上下料具有高精度、适应性强、灵活性强、安全性高、稳定性好和自动化程度高等优势,可以大大提高生产效率和质量
电机如何实现左右摆动
电机如何实现左右摆动 电机是一种能够将电的能量转换成机械能的装置,广泛应用于各种设备和机械中。在一些场合下,需要将电机实现左右摆动的运动,比如自动门、工业机械等。那么,电机如何
adc和dac的主要技术指标有哪些
术语“双极性”表示信号在某个基准电平上、下摆动。单端系统中,输入通常以模拟地为基准,所以双极性信号为在地电平上、下摆动的信号。差分系统中,信号不以地为基准,而是正输入以负输入为参考,双极性信号则指正输入信号能够高于和低于负输入信号。
发表于 08-15 12:18
•2320次阅读
![adc和dac的主要技术指标有哪些](https://file1.elecfans.com/web2/M00/90/92/wKgaomTa_UCARs7UAAAG37PwQuQ494.jpg)
评论