Tuesday, March 15, 2016

Robotics and the Picky Camera

My mission at the robotics meeting was to test the last of the cameras for our underwater bot. On Saturday I was only able to test three of the four cameras since we could not find the fourth. Luckily it turned out to have been at school, rather than permanently missing. The director of the club had it ready for me to check at the beginning of the meeting, so I was able to get started on the complex set-up process.

I took my little laptop, hooked it up to our control box that contains the only power supply that will work with the camera, and also connected the USB video adapter.

The video adapter is what some might call "picky" if it was human. It has very unusual drivers, so it will not work with most graphically launched video display programs. Also, we have only been able to identify two programs that work with the adapter: avconv and mplayer.

Following the physical setup, I punched in the mplayer command to have camera's image display on my screen and    .   .    .

                  "Command not found."

So, I tried avconv and    .   .    .

                   "Command not found."

Rats!!!  I didn't have either of them installed on the laptop I had with me.

I tried to install mplayer by manually downloading the .deb package, but of course forgot to download one of the recommended dependencies.

Eventually I gave up on my laptop and borrowed an old TV from the storage closet. We plugged the camera directly into it, turned it on, and waited for the the camera's image to appear     .   .    .

Although we were now able to view the camera's impressionistic colorful swirling image of the room, it was not quite the image that would help us win the MATE competition. The camera, after all of that work, was broken.  Fortunately, we have enough funds in the budget to replace it and try again. By then I will have both of the adapter programs downloaded on both of my laptops.


Bonus Tech Stuff: Squid - Speeding up Internet Access

Squid is a proxy server designed to speed up internet access by caching files. It is highly customizable and can work alongside other services in order to provide advantages - such as anti-virus, TOR, and ad blocking. This type of service can be especially helpful for environments which contain a large number of computers on one network - such as a school. Commonly accessed pages, such as the Google main page, are stored so that they only need to be re-downloaded every once in a while. This strategy provides a significant speedup, and allows a weak internet connection to be usable by a large group of people.

This proxy server can also theoretically be set up on Android phones with a tool like Linux Deploy. The cache created by Squid could potentially reduce the phone's need to use mobile data. Although the level of impact of this proxy on data usage depends on how you are using your phone, it would definitely provide a reduction in data usage. Squid is also able to forward downloads through TOR, and can even be used as an ad blocker. For those devices with more limited processor and memory resources, Polipo may be used instead. Polipo is like Squid, but designed for more resource-constrained systems.

Arch Wiki:
Squid
Polipo
#slice2016

No comments:

Post a Comment