睿诚科技协会

Brainlink如何操控无人机?

BrainLink + 无人机 = ?

BrainLink 是一个中间桥梁,它本身不能直接控制无人机,但它可以读取你的脑电波信号,然后通过蓝牙将这些信号“翻译”成电脑或手机可以理解的指令,由电脑或手机上的软件(如 Scratch 3.0、Python)根据这些指令,向无人机发出飞行的命令。

Brainlink如何操控无人机?-图1
(图片来源网络,侵删)

工作流程如下:

你的大脑 → BrainLink (读取脑电波) → 蓝牙 → 电脑/手机 (软件处理指令) → WiF/蓝牙 → 无人机 (执行动作)


控制无人机的两种主要方式

根据你的技术水平和需求,主要有两种控制方式:

图形化编程(适合初学者、儿童、教育场景)

这是最简单、最直观的方式,通常使用 mBlock(基于 Scratch 3.0)软件。

Brainlink如何操控无人机?-图2
(图片来源网络,侵删)

原理: 在 mBlock 软件中,你通过拖拽积木块来编写程序,程序会不断检查 BrainLink 发送过来的脑电波数据(专注度”、“放松度”等),当某个数值达到你设定的阈值时,就触发一个无人机动作(起飞”、“左转”、“降落”)。

所需设备:

  1. BrainLink 主机
  2. 无人机 (支持 Wi-Fi 或蓝牙遥控的,如 Parrot 系列无人机、部分 Tello 无人机、或其他兼容的 DIY 无人机)
  3. 电脑或平板电脑
  4. 数据线 (用于给 BrainLink 和无人机充电)
  5. mBlock 软件 (在电脑或平板上安装)

详细步骤:

  1. 硬件连接与准备:

    Brainlink如何操控无人机?-图3
    (图片来源网络,侵删)
    • 给 BrainLink 和无人机充满电。
    • 打开无人机电源,确保它处于正常待机连接状态(有些无人机需要连接手机 App 先配对好 Wi-Fi)。
    • 打开 BrainLink 电源,它会自动进入蓝牙配对模式。
    • 在电脑或平板上,打开蓝牙,搜索并连接名为 "BrainLink" 的设备。
  2. 软件准备:

    • 下载并安装 mBlock 5 软件。
    • 打开 mBlock,在左上角的设备管理器中,选择 "添加设备",找到并连接你的 "BrainLink"。
  3. 编写控制程序 (示例:用“专注度”控制无人机起飞):

    • 事件模块: 拖出一个 当绿旗被点击 的积木。
    • 脑电波模块: 从“扩展”中找到 BrainLink 的积木库,拖出一个 当 BrainLink 接收到数据 的积木。
    • 条件判断模块: 拖出一个 .... 的积木,在“的六边形槽口中,放入 BrainLink 的专注度 > 80 这样的积木,这意味着,当你的专注度数值超过80时,就执行下面的操作。
    • 无人机控制模块: 从“扩展”中找到你的无人机品牌对应的积木库("Parrot" 或 "Tello"),拖入 无人机 起飞 的积木,放在“的下面。
    • 循环模块: 为了持续监测,将整个 .... 逻辑块,放入一个 重复执行 的积木中。

    程序逻辑就是:

    • 点击绿旗开始程序。
    • 不断重复执行:
      • 读取 BrainLink 的专注度。
      • 如果专注度 > 80,就让无人机起飞。
  4. 上传并运行:

    • 将编写好的程序上传到你的电脑或平板。
    • 戴上 BrainLink 的头带,确保电极片与额头接触良好。
    • 点击绿旗运行程序。
    • 尝试集中注意力(比如盯着一个复杂的图形或做数学题),当你的专注度达到设定值时,无人机就会自动起飞!

其他创意玩法:

  • 用“放松度”控制降落: 当你感到放松时,无人机缓缓降落。
  • 用“眨眼”控制: 通过检测特定的肌肉信号(EOG)来模拟“眨眼”,实现拍照或紧急悬停。
  • 手势 + 脑电波: 用挥手(通过其他传感器检测)来切换控制模式,用脑电波来执行具体动作。

Python 编程(适合有一定编程基础的开发者、进阶玩家)

这种方式提供了更高的自由度和灵活性,可以实现更复杂的逻辑和算法。

原理: 使用 Python 通过 pyserialbleak 等库与 BrainLink 进行蓝牙通信,直接读取原始的脑电数据,你可以自己编写算法来解析这些数据(使用机器学习模型来判断用户的意图),并通过 Python 的无人机 SDK(如 Tello 的 tellopy)来控制无人机。

所需设备:

  • 与方式一基本相同,但主机最好是电脑。
  • 需要安装 Python 环境。
  • 需要安装相关的库:pyserial (或 bleak)、tellopy (或其他无人机 SDK)。

详细步骤(概念性):

  1. 环境搭建:

    • 安装 Python。
    • 安装必要的库:pip install pyserial tellopy (假设使用 Tello 无人机和串口通信)。
  2. 编写 Python 脚本:

    import serial
    import tellopy
    import time
    # --- 1. 连接 BrainLink ---
    # 注意:这里的 COM 端口需要根据你的系统实际情况修改
    # 在 Windows 上是 "COMx",在 Linux/Mac 上是 "/dev/tty.xxx"
    brainlink = serial.Serial('COM5', 115200, timeout=1) 
    # --- 2. 连接无人机 ---
    drone = tellopy.Tello()
    try:
        drone.connect()
        drone.wait_for_connection(60)
        print("无人机已连接!")
    except Exception as e:
        print(f"连接无人机失败: {e}")
        brainlink.close()
        exit()
    # --- 3. 主循环:读取数据并控制 ---
    while True:
        try:
            # 从 BrainLink 读取一行数据
            line = brainlink.readline().decode('utf-8').strip()
            if line:
                # 假设 BrainLink 发送的数据格式是 "专注度:85,放松度:20"
                # 这里需要你根据 BrainLink 的实际数据格式进行解析
                parts = line.split(',')
                focus = int(parts[0].split(':')[1])
                print(f"当前专注度: {focus}")
                # --- 4. 根据数据控制无人机 ---
                if focus > 80:
                    print("专注度高,执行向前飞行!")
                    drone.forward(30) # 向前飞行30cm
                    time.sleep(1)     # 飞行1秒
                    drone.hover()     # 悬停
                elif focus < 30:
                    print("专注度低,执行向左旋转!")
                    drone.counter_clockwise(90) # 逆时针旋转90度
                    time.sleep(1)
                    drone.hover()
        except KeyboardInterrupt:
            print("程序被用户中断")
            break
        except Exception as e:
            print(f"发生错误: {e}")
            drone.land()
            break
    # --- 5. 清理资源 ---
    drone.land()
    drone.quit()
    brainlink.close()

进阶玩法:

  • 信号处理: 对原始脑电波进行滤波、傅里叶变换,提取特定频段的能量(如 Alpha 波、Beta 波)。
  • 机器学习: 收集大量“想象左转”、“想象右转”等不同意图下的脑电数据,训练一个简单的分类模型(如 SVM 或 神经网络),让无人机能更智能地识别你的复杂意图。
  • 多自由度控制: 同时使用多个脑电指标(如专注度、放松度、眨眼)来控制无人机的多个维度(前后、左右、上下、旋转)。

注意事项与挑战

  1. 设备兼容性: 并非所有无人机都能被编程控制,请确保你的无人机有开放的 SDK 或 API 支持。
  2. 信号稳定性: 脑电波信号非常微弱,容易受到干扰,请确保:
    • 电极片与皮肤接触良好、干净。
    • 远离强电磁干扰源(如 Wi-Fi 路由器、微波炉、手机)。
    • 保持身体放松,避免肌肉紧张(如咬牙、皱眉)产生干扰信号。
  3. 校准是关键: 每个人的脑电波特征都不同,甚至同一个人在不同时间、不同状态下的基
分享:
扫描分享到社交APP
上一篇
下一篇