android:机器人应用程序外部usb设备的api

android:机器人应用程序外部usb设备的api,android,usb,webcam,external,robot,Android,Usb,Webcam,External,Robot,安卓设备变得难以置信的便宜(尤其是那些安卓v1.6版的设备)。我正在考虑用它作为自主机器人的大脑。不幸的是,我没有找到任何关于这方面的信息 我想连接两个外部USB网络摄像头和一些DIY自制USB ADC和输出端口转换器,以控制方向盘和读取模拟距离传感器。如果我选择一些便宜的上网本,它们通常已经有3个usb端口。但如果我将被迫使用平板电脑,那么它还需要一个usb集线器 android设备支持usb集线器吗 是否有任何API可以从外部usb网络摄像头(例如“vfa://0”和“vfa://1”)获取

安卓设备变得难以置信的便宜(尤其是那些安卓v1.6版的设备)。我正在考虑用它作为自主机器人的大脑。不幸的是,我没有找到任何关于这方面的信息

我想连接两个外部USB网络摄像头和一些DIY自制USB ADC和输出端口转换器,以控制方向盘和读取模拟距离传感器。如果我选择一些便宜的上网本,它们通常已经有3个usb端口。但如果我将被迫使用平板电脑,那么它还需要一个usb集线器

  • android设备支持usb集线器吗
  • 是否有任何API可以从外部usb网络摄像头(例如“vfa://0”和“vfa://1”)获取静止帧
  • 是否有从USB自定义设备读取的API?为了简单起见,假设它将模拟串行端口
  • 我是否在安卓1.6或任何更新版本中获得了所有这些功能


  • 作为对您信息的更新:根据答案,我认为android设备相对于努力来说太贵了。我会选择便宜的atom上网本,配备标准linux和arduinio USB设备,用于控制和传感器。以半公斤(一磅)重的设备为代价,我将节省几个月的学习和开发时间。

    据我所知,使用默认的Java API您将无法获得这些。但是,如果您构建一个自定义内核并向其中添加所需的模块,那么可以实现很多这样的功能。基本上,这一切都归结为内核黑客攻击,不会真正与Android相关


    我自己也对这类东西很感兴趣,所以请让我随时更新。

    你需要一款android设备,它要么支持usb主机模式,要么支持开箱即用(一些便宜的平板电脑显然是这样做的),要么就是一款可以通过自定义usb电源线和一个新的内核驱动程序来实现这一点的手机(尽可能多的手机)

    你可能需要根

    该api将是普通的linux USB堆栈,包括几乎所有可用于桌面linux的C代码源可用设备驱动程序(使用在兼容性包装器中运行的x86二进制windows驱动程序的除外)

    您可以使用普通的方法(设备文件、读/写/ioctl)从ndk与之交互,也可以通过仔细的驱动程序设计来交互,这样您就可以从java中获得一些文件,或者至少从java中获得一些关于设备文件操作的精简ndk包装


    本质上,这不是一个“安卓”问题,而是一个关于特定安卓设备硬件功能的问题,如何在该设备上扎根,然后成为一个标准的嵌入式linux问题。

    实际上是相当肤浅的内核黑客行为-大多数真正的黑客行为,例如在没有适当数据表的情况下编写主机模式驱动程序,其他人已经完成了etc。可能需要应用他们的补丁,重新编译和安装内核。非常感谢您的回答。我的决定如下:1。具备所需功能的Android设备将过于昂贵(超过200美元);2.以同样的价格,我可以买到atom上网本;3.我将在上面安装标准ubuntu,我将获得额外的好处:arduinio的标准IDE;4.标准PC和标准arduinio将为我节省数月的新平台学习时间。