How many machines does a single license allow?
The license covers a single machine. Should you need another license you will have to purchase a second or uninstall on the current machine and reinstall it on the another.
After I purchased a license, does it ever expire?
Purchased licenses are for lifetime use and NEVER expire. You can continue to operate the application as long as you'd like. The provided download link after purchase will continue to work and provide you with your last available version.
For one year after purchase, you will be able to download the most recent updates (this included new modules, bug fixes, enhancements, etc.). These free updates will stop one year after purchase and allow you to purchase another year of updates at a reduced price from the original purchase. The application WILL continue to function, you will just not be able to use the latest features one year after purchase.
I didn't get an email from you after purchase?
You should get an email from us within a couple minutes after purchase with a download email containing a licensed download link. This link will download RoboRealm which can then be installed. If you did not see this email check your email account that is associated with PayPal (we sent the email to that address). Also check any junk folders that may contain the email. If you still did not see any email it is always possible that it got lost somewhere along the way. Please Contact Us with your PayPal email and transaction ID and we'll sort things out as-soon-as-possible.
Do you mail a CD?
No. To keep costs down and speed up the delivery process we only send out electronic copies. Even if we did, the copy on the CD would be quickly out-of-date as RoboRealm is frequently updated. Keeping your download link handy (it is embedded in the Download button in the Options Dialog interface) is more useful than a physical CD.
I need an Invoice/Quotation/etc.?
No problem, just Contact Us and send the number of copies you wish to purchase and your organization's name and official address and we can provide you with official documentation.
Do you offer academic discounts?
Yes, we do. Please Contact Us with your school's name and address and the number of copies you would like to purchase. We will then reply with an official quote.
What is your phone number/address?
To keep costs down RoboRealm does not have any physical office space nor a full time person to answer phones. You are always welcome to Contact Us and we can provide you with appropriate phone numbers and address for existing users but only on request. RoboRealm central is located in Denver, Colorado, USA and is on Mountain Time (GMT -6).
How do I download previous versions?
You can always download previous version of RoboRealm by appending
to your download URL. X Y Z represent the 3 digit version number as in
that is seen in the Title bar of the executing RoboRealm application or as specified in the Options Button dialog.
How can I add computer vision to my Robot?
Depending on what your budget size is you have three possible options:
1. NTSC Transmission - Attach an NTSC camera to your robot. They come in very small sizes and usually only require a 9 volt battery (see SuperCircuits). You will also need to buy an NTSC transmitter to transmit the video signal to your main host computer. Your host computer will need a a TV Tuner card or an external USB TV Tuner like WinTV from Hauppauge. This would allow you main computer to process the video and send signals back to the robot. This technique also reduces power requirements since you don't need much on your robot.
2. Internet Camera - You can buy something like the DLink DCS900 Camera which is a 'network camera' that sends video to a remote machine over 802.11 wireless. It is a self standing camera+computer. Again, a remote computer is needed to process the video stream (note that RoboRealm supports the DCS900 camera) so it will need an 802.11 wireless adaptor.
3. Onboard - Buy a biscuit board or PC104 board to digitize the video from the usb webcam onboard the robot. This is the most reliable and stable technique but requires a lot of custom building for power management and is the most expensive option since you'll need an Intel based board to run RoboRealm onboard the computer.
If you're a programmer we recommend option #2. We have tried option #1 with the Desktop Rover by Plantraco but that reception was not very good and the image was very jittery and unusable for use. Perhaps a more powerful transmitter would have been better suited to the task.
Following are a couple of scenarios on how you would get images into RoboRealm for processing.
-- Onboard Robot Internet Camera
-> Wireless 802.11 transmitter (built into Internet Camera)
-> Wireless 802.11 receiver (usually your router already has this)
-> PC via wired network
-> RoboRealm grabs and processes images, sends commands via serial port
-> Serial port is attached to Bluetooth/RS232 wireless transmitter
-> Bluetooth message received into onboard robot PC
-> Onboard PC sends commands to motors/servos
-> Motor/servo moves robot
-> Internet camera picks up change ... and so on.
Above solution requires two way wireless communication and onboard robot microcontroller.
Scenario #2 (BucketBot)
-- Onboard Robot USB Webcam
-> USB into Onboard PC (PC104 or ITX)
-> RoboRealm running on robot processes images and sends commands via RS232
-> Mini-SSC Servo controller receives serial signals
-> SSC sends PWM to electronic speed controller
-> Speed controller moves DC motors accordingly
-> USB camera picks up change ... and so on.
but this will limit onboard processing power. To eliminate that issue you can instead use
-- Onboard Robot USB Webcam
-> USB into Onboard PC (PC104 or ITX)
-> Roborealm running on robot sends image to PC using 802.11 wireless card (imitating the Internet camera)
-> 802.11 router picks up image
-> Desktop PC running RoboRealm grabs and processes image and sends results back to PC onboard robot
-> OnRobot RoboRealm receives information and sends commands to servo controller via RS232
-> Camera picks up change ... and so on.
Scenario #3 adds the 802.11 wireless card to the onboard PC which allows you to distribute processing onto desktop PCs.
The basic system will revolve around the onrobot PC. Since you have that PC you can use it to do more of the work that would otherwise be done by the DLink camera and Bluetooth devices.
If you have any questions about the above let us know ... we've tried them all!
What cameras does RoboRealm support?
RoboRealm supports many industrial machine vision cameras by supporting both the GenICam standard and Windows DirectInput. For a more specific list see Industrial Cameras RoboRealm Tested. RoboRealm also supports any USB webcam and TV tuner that has Windows DirectX or VFW drivers. In addition, RoboRealm support various Internet cameras such as the DLink (see below), Axis, etc. Using the Media Reader module you can also view streaming ASF files or play avi, mpg or wmv files. And, of course, you can also open or drag and drop many static image file formats such as jpg, gif, png, ppm, etc. into RoboRealm to be processed.
How many cameras can RoboRealm use at one time?
There is a software limit in RoboRealm that will allow for 16 USB cameras to be connected at one time. This limit will most likely not be reached since your USB bus speeds will probably not allow for more than 4-6 webcameras being attached to your computer. If you need to use more cameras try decreasing the size of the image being captured from the camera (use Options Button->Video Tab->Format button) or decrease the capture rate. Also be wary of the power requirements as each camera may reduce your USB bus power below operating requirements and cause your laptop to blue screen. It this happens try using a powered USB hub to provide an alternate power source.
Note that this restriction is only for USB connected webcams. IP or Firewire cameras do not have such a limitation. However, at some point your network will become saturated with enough IP cameras (esp. if using wireless) and also cause the framerate to decrease. Firewire cameras also have the same issue but the speeds are typically higher.
Also note that for USB cameras there is technically a 16ft extension limit. We have been able to get usage up to about 21ft without error on some cameras. There are usb extenders that you can purchase to overcome this limitation but your frame rate may suffer as a result.
Why require online license registration when I first run RoboRealm?
The one time license registration is to ensure that the application is not copied to more machines that the license permits. This process is meant to help us keep things fair for those folks that do help us out by supporting RoboRealm's development. Even if you are installing RoboRealm on a non-Internet machine for the first time you can either visit the Request Code Page or contact us and send us the required code that can be copied from the registration interface. This permits a machine that does not have direct Internet connection to get registered by a straightforward process.
We understand this is an inconvenience as many machines are not connected to the Internet but hope that this helps in controlling copying abuse to the benefit of all. Note that this Internet connection is only required the first time you run RoboRealm and NOT on updates or successive runs.
Why did I run out of licenses? Where did I install RoboRealm?
To better help you manage where RoboRealm is installed in your organization visit the Request Installed Applications page where you can request an email be sent that lists where RoboRealm has been installed under your account. This is a useful why to monitor how many licenses you have left and where RoboRealm is in use within your organization. If you un-install RoboRealm on machines that have an Internet connection enabled this will decrease the registration count and allow you to install on other machines.
How do I move a RoboRealm license?
UnInstall RoboRealm on the old machine while connected to the Internet. Then download the latest version using your original download link (or use a previously downloade3d setup file) and install on the new machine. When you un-install RoboRealm on machines that have an Internet connection this decreases the registration count and allows you to install the license on other machines. If you have accidentally deleted the old machine prior to un-installing RoboRealm just contact us and let us know which machine you wish to have the licensed removed from and we can help you out.
How do I update RoboRealm to the latest version?
To update your current copy of RoboRealm to the latest addition simply use the link that you initially received to download the latest version. The link automatically adjusts to the latest version on each release. Be sure to install the new version over your current copy in order to be sure to get all the needed files updated. If not you many encounter incompatible dll (library) files that can cause application problems.
You can always ensure that you are running the latest version by comparing the version number in the title bar of the RoboRealm application to that specified on the website homepage.
Do you provide source code or a linkable library?
We do NOT provide a library or source code since there are other alternatives to interfacing with an application like RoboRealm.
We have chosen to integrate VBScript within the application itself to allow for beginning users to easily add code specific to their purpose without needing a VC++ compiler or any understanding of C/C++.
For those more inclined to program we have included plugins where you can interface with the RoboRealm application using sockets or pipes. (i.e. RoboRealm will send the processed image to your own standalone program). This has the nice effect that you can write your own software using any language you like (Perl, C#, Java, Visual Basic, etc).
Any finally we provide an interface that allows you to write your own RoboRealm module and include it within the program as a plugin (similar to the ImageJ plugins). This is more involved DLL C++ programming but does offer the best interface to RoboRealm and is the most powerful.
See RoboRealm Plugins for more information.
So, even though we don't include the source code or a callable library we do offer many alternatives (some much easier than dealing directly with code) while still allowing plugins to the system.
This reasoning was reached after watching the OpenCV (an Intel sponsored open source vision toolkit) forum and how many issues are raised in that forum that are simply due to failures in compiling and running the system. At RoboRealm, we wanted to focus on helping users work with the algorithms and creating solutions rather than working through compiling issues due to incompatible systems.
How would I write RoboRealm variables to a file?
You can use the Loading/Saving->Write Variables module or you can use the Extensions->VBScript_Program module with the following code. First create a file with the code and then add the VBScript module to your RoboRealm processing pipeline and reference the file you just created. The file should contain the following code:
Dim fi Dim fso set fso = CreateObject("Scripting.FileSystemObject") set fi = fso.OpenTextFile("c:\temp\test.txt", 8, true) if err.number = 0 then ' Append the cog coordinates to the file. ' You can specify other variables here fi.writeLine GetVariable("cog_x") & ":" & GetVariable("cog_y") fi.close end if set fi = nothing set fso = nothingThis example assumes that the folder c:\temp\ exists!
Can I use RoboRealm in embedded environments?
For embedded systems that are not using PC based onboard computers then NTSC transmission from the robot to a desktop computer running Windows is a good alternative. You can find many such camera/transmission systems at SuperCircuits.
If you have a CMOS based camera with an embedded FPGA or other internal processor then we're probably not the right application to use. However, if you're developing your own vision routines you can certainly use RoboRealm to experiment to see which routines are correct. Searching for most of the module names will reveal much source code in many languages that can help you out. We even promote open source products at Open Source/Freeware Vision Software to help you out in finding the needed source code.
Can RoboRealm run in Linux?
Alas no, we do not have a linux version. As we depend on VFW (Video for Windows) and the Win GUI a port is a little more involved than we are currently prepared (or have the cash) to do. However, it is possible to write a video server that would run on a linux box and send the image to RoboRealm running a Windows based machine or use an NTSC transmitter from your Robot to a Windows desktop machine.
I am starting to build a robot. Where can I get started?
There are many websites to chose from but to get starting building a robot we recommend purchasing one of the commercially available kits. This will help you understand the basics of robot building and introduce you to the many different aspects of robot creation.
Other sites allow you to repurpose other robots such as the Roomba
and still others are about collecting bits and pieces to construct your own with provided software.
There are also many hardware manufacturers that have good websites that can help you out. Have a look atcomplete list.
How can I load a JPEG image into RoboRealm?
If you have trouble loading JPEG or other images into RoboRealm be sure to have downloaded FreeImage and place the freeimage.dll next to your RoboRealm program or in your system32 folder (sometimes c:\winnt\system32 or c:\windows\system32 etc.).
Run RoboRealm and then click on the top Open button. Note that the Open button works for both images and robofiles (RoboRealm configuration files). You will need to switch off the camera preview (just click on the preview button if it is depressed) to get the Load button to be enabled. That should do it!
Do you have a feature roadmap?
We have a long list of features to add. We have 2 main development paths, (1)the application and (2)the website.
1. The website development is mainly around documentation and community building tools (most of which we have yet to launch).
2. The product development breaks into two parts. There are then more known features that exist in other products like OpenCV which includes things like filters such as Kuwahara, Mode, Color Movement, etc. The second development path is more research oriented such as Image Matching which work from variable degrees in other products. This development path has no current existing equivalent in other applications or is only partial supported due to technical or algorithmic restrictions.
Typically new features are driven by real world case scenarios. I.e. we want the robot to do X and then set about to accomplish this task. The brainstorming of how to accomplish this task creates many MANY new features that need to be added before the combination of them can be used to accomplish the task at hand. The interesting thing is that many of those sub task features can be used for many other different tasks. The accumulation of these building blocks is the main interest and usefulness within RoboRealm.
Is RoboRealm affiliated with any Universities?
No, we are currently not associated with any Universities. However, the application is frequently used for various class activities. If you are planning on using RoboRealm for your classes and need help in creating an appropriate lecture please contact us and we'll help out in any way we can.
What are the minimum requirements to run RoboRealm?
Most of the requirements are quite low. The following should be sufficient:
- Memory - 512 Meg
- Disk - 100 Meg
- Video Card - True color - 1024x768
- Keyboard, Mouse
- VFW or DirectX WebCam - 320x240 resolution, 30 fps, USB2.0
- CPU - As fast as possible - 2GigHz plus
While RoboRealm currently does not take complete advantage of dual core technology it is recommended as it is very easy to quickly add a couple filters to reduce the frame rate to slower than usable.
It is worth pointing out that you can run RoboRealm on even a slow 386 machine (our BucketBot robot is a 386) but you have to reduce the resolution to 80x60 and accept about 10fps...it will largely depend on what you're trying to do.
Keep in mind that XP or Win2000 needs more memory than the above requirements. We recommend at least 512 to give other applications a little wiggle room. (but again we have win2000 on our BucketBot with only 64Meg and it runs fine ... but that's the only program running!)
How do I make the Dlink DCS900 Internet camera work with RoboRealm software?
Insert the Loading/Saving-> Read Http module into the processing pipeline.
Then type in
with the appropriate IP address (your's will most likely be different than above)
and press the START button.
The video should appear in the RoboRealm image area.
RoboRealm complains about a missing script component?
Most Windows installs already come with the Microsoft Scripting Control installed and should not need the component downloaded. But if RoboRealm complains about the missing component you can download the Microsoft Script Control.
A special note for Vista users: this component needs to be registered as an Admin. RoboRealm can do this for you if you right click on RoboRealm.exe and select "Run As Administrator". This will run RoboRealm in administrator mode and allow it to register this component for you. Once this is done you can then run RoboRealm in normal user mode. (I.e. select "Run As Administrator" only once).
RoboRealm complains about a missing dll component?
Try copying all the .dll files in the RoboRealm folder into your c:\windows\system32\ folder. Sometimes you will not have the current path as part of the system dll search path. The system32 folder will be in that search path and thus putting those files in that folder should make them available.
If that still does not work then type regsvr32 dll_name (usually ScriptSite.dll) in the command console after changing to the RoboRealm folder. The dll_name above is the name of the missing DLL (e.g. ScriptSite.dll)
If running Vista also try right clicking on RoboRealm.exe and select "run as administrator". This is a known permission issue with Microsoft Vista.
RoboRealm will not start!
Try holding down the CTRL key when starting RoboRealm. This will cause the application to not remember any previous configurations and not attempt to connect to a camera image on startup. It is essentially a reset switch. It causes RoboRealm to run as if it has just been installed and ignore any current settings. Any settings performed from here on will then be saved as before and overwrite any previous settings.
How do I programmatically extend or interface with RoboRealm?
To review a complete list of interface capabilities of RoboRealm have a look at Extending/Interfacing/Programming RoboRealm.
Plugins are modules controlled by RoboRealm whereas the API is meant to control RoboRealm.
Plugins allow you to create new modules that will be called on each iteration of the processing loop. They are meant to be incorporated into RoboRealm in order to "extend" the application's modules. They ARE guaranteed to get each image that is processed by RoboRealm and will receive all variables that are current with the application. They can also stop the processing loop (DLL only). RoboRealm will NOT run without a required plugin and thus you need to make sure your plugin is always available (or it is automatically loaded if a DLL).
The API allows you to control RoboRealm from another application. You can do similar things as a plugin such as getting the current image or placing a new image in the processing pipeline but you are NOT guaranteed to get every frame of the processing loop. RoboRealm will continue to run regardless of if your control program is running (unlike plugins).
Which one you use will depend on what you're trying to develop.
I forgot my Kiosk password!
You will have to delete the RoboRealm registry entry to reset the password to null. You do this by
1. Go to START button, select run, type "regedit" without the quotes
2. Navigate to HKEY_CURRENT_USER\Software\RoboRealm
3. delete the RoboRealm key entry (and all its subtree children).
4. exit regedit
5. restart RoboRealm
Once this is done you will be in program mode of RoboRealm and will have to configure all settings once again.
What platforms does RoboRealm support?
We support Windows 98, 2000, XP, Vista, Win7, Win8 and Win10.
Hoes does RoboRealm use multiple CPUs?
It is possible to use more than one CPU while processing the pipeline. You will need to increase the CPU Usage in order to use more than one CPU. When this value is larger than 1 RoboRealm will launch a pipeline iteration on separate CPUs as soon as an image is available and a CPU is available. What this does is increase the overall frames that are processed in any given moment BUT they all still have the same lag from reality as a single CPU solution would have. For example, if you current pipeline is taking 500 milliseconds to process that means you are getting about 2 frames a second (fps). When you add another CPU, RoboRealm will run two pipeline instances simultaneously so that while each image still takes 500 ms to process you are now getting approximately 2x the output rate of 4 fps. This scales with more CPUs but not perfectly (i.e. 8 cores will not increase the speed by 8x exactly).
Keep in mind while you are getting a better fps each individual frame is still taking 500 ms to process. So in the cases where quicker and faster reaction time is needed (perhaps to trigger an actuator) multiple CPUs will *not* help.
My camera fps (frames per second) is SLOW!
Ensure that the RoboRealm RUN button in the main RoboRealm interface is untoggled (up). This disables all processing of the image and should show the camera preview at close to the maximum speed of the camera (normally 30fps). Does your fps now increase to the maximum rate?
- Check what modules you have added to the processing pipeline. Some modules are much more complex than others and will reduce the overall fps considerably. See the average time spent in the module on the right side in gray alongside each module. See if you can reduce/eliminate those modules that require significant time to process. Note that some modules that connect to robots will cause a delay if that machine is not accessible while the connection times out. If you have one of these modules in your pipeline disable it using the Disable button (after selecting that module) which will cause the module to be ignored in the next processing loop (however, you may have to still wait for the current timeout before things speed up).
- Check that you have DirectX installed. If you are using just VFW (Video For Windows) you will want to update to the most recent version of DirectX which is much faster than VFW.
- You should also check that your camera can actually support a higher fps rate that what you are viewing.
- Check that enough light is getting to the camera. Many cameras have automatic lighting adjustment (exposure) which will
cause the camera to slow down its frame rate while it waits for the CCD's to collect enough photons to produce
an image. Turning off the automatic lighting adjustment will increase the speed of the camera but really darken
the image. You can use the Color_Balance module to compensate for this decrease in lighting.
Some of the Logitech cameras require you to turn off "Right-Light" before you can turn off "Automatic Settings" and manually change the exposure. Note that the "Right-Light" check box is on a different tab/screen than the "Automatic Settings" check box.
- Decrease the camera image size to something really small like 80x60 or the smallest setting possible. If your fps then increases your USB bus many not support a high enough bandwidth to transmit a larger image. You might need to purchase a more modern computer with a USB 2.0 bus in order to transfer images faster.
- Try covering the RoboRealm camera preview image but still have the fps rate visible in the status bar. Once covered does the fps increase? If so then your video card may not be able to support the bandwidth needed for live preview. You can reduce this issue by going into the Options button->Other->Preview Rate and change the number to something slow like 5. This will cause the preview of the image to slow but still keep the actual processing of images fast in the background. This is also needed when viewing the RoboRealm interface over a slow network connection using a remove desktop tool like Terminal Server, Remote Desktop, VNC, GotoMyPc, etc.
RoboRealm crashes when accessing my camera!
Try using AMCap (a free program distributed by Microsoft Driver Kit) to see if the problem is with RoboRealm or with an OS setting. If AMCap also crashes then you have a driver or OS related issue. We will not be able to help you in this situation. If AMCap works, then:
- Startup RoboRealm in default mode (hold CTRL key down while clicking on RoboRealm.exe)
- Click on the "Options" button and then the "Other" (last) tab. Select the "Debugging->Verbose RoboRealm.log" checkbox. If you cannot access the Options dialog (i.e. that is what is causing the crash) then exit RoboRealm and use the command console (c:\windows\system32\cmd.exe) to type in "C:\program files\RoboRealm\RoboRealm.exe -debug" (without the quotes) to startup RoboRealm in the debug mode.
- Click on the Video tab and attempt to select your camera that causes RoboRealm to crash.
- Once RoboRealm crashes look for the file c:\roborealm.log on the root of your harddrive.
- Send that file to us using our Contact page and we'll get back to you with any possible fixes.
How do I cite RoboRealm in a publication?
You can use the following entry to reference RoboRealm when used within a publication.
Gentner, S. (2017). RoboRealm, LLC: Machine Vision Software (Version 2.87.14) [Computer Software]. Colorado: Denver. Available from http://www.roborealm.com/
Does RoboRealm run on any other Operating Systems besides Windows?
The only way to get RoboRealm to run on other operating systems is to use virtual machines that have windows installed. For example, you can run VirtualBox from Oracle on Unbuntu to run Windows which in turn can run RoboRealm. Others include VMware or Parallels
There are some other options like using Wine on Linux to run RoboRealm which works but at the time of testing was not able to access USB webcameras on the machine. This, however, does not prevent the usage of IP cameras in this context.
Additional possibilities are applications like CrossRoads that can run Windows based applications on other systems like Linux and Mac without the need for the full OS.
How do I get my IP camera to work with RoboRealm?
This will depend on which camera you have. We support several IP cameras directly which you can find in the module list in Docs
Most IP cameras have the ability to work in webbrowsers using different techniques. The easiest is when they provide you with a straight URL that will either send back a single jpg image or a stream of jpg images (known as MJPEG). The trick is to find this URL for your camera. The best way is to just ask the vendor what that URL is. If not, it may be possible to find that URL within the browser interface if it is used. Typically most interfaces will have a Snapshot button which executes a URL that could be used by RoboRealm. This requires you to 'view source' of the webbrowser pages and know what you are looking for. Otherwise asking the camera vendor or searching the web for that URL might be the easiest option.
We often get asked how we find the url. With an unknown camera we will explore the interface to see what options are available. In most IE browsers an ActiveX object is used which isn't helpful since the access technique is typically hidden within the ActiveX module. For other browsers like Chrome or Firefox either a direct MJPEG stream is used or a Java applet to stream the images. These are typically easier to understand and find the url (either as a Java parameter or frame src) that is used to access the image data. Thus we typically try using either of those two browsers to access a camera and see if it provides a streaming option. If it does, we then delve behind the scenes with view-source to see what is present. Typically most cameras have /cgi-bin or end with .mjpeg or something akin to that which is the url that will stream image data. Its a bit of guesswork along with a fundamental understanding of how images are accessed over the web given specific technologies. This isn't for the inexperienced web applications engineer!
Once that URL is known, you can use the HTTP_Read module to actually grab the remote image and place it within the main RoboRealm processing window. From here on the fact that the image came from an IP camera is no longer relevant. There are also many preconfigured urls in the HTTP Read dropdown that you can test if you have a similar camera to the brands mentioned in that list. Be aware, cameras with even a single model number difference can use completely different urls to access images so using something close to what you have isn't a guarantee that it will work.
In more modern cameras other protocols such as RTSP are available. These can provide a better video stream than MJPEG as the video compression is better but can suffer from reality lag (i.e. you get 30 frames per second but just from 1 or 2 seconds ago). This is not an issue in static applications but can become very frustrating when reacting a device to movement.
If your camera supports RTSP you will again have to find the right URL (should begin with rtsp://) or ask the camera vendor. Once this is found, you can enter this URL into the RTSP Player module.
If you are still unable to connect you have two final options:
- Either find your model camera online (sometimes the vendors have live demos) or exposure your camera to the internet such that we can access the camera remotely to figure out what the right URL is to connect to the camera,
- If you cannot find a live demo online or exposure your camera to the internet you can send us the camera itself to allow us to investigate directly on how to connect to it.
How do I switch to another language in the interface?
- Click on the Options button in main RR interface
- Click on Other tab (use tab scroll arrows to move to last tab)
- Select appropriate language in language Dropdown
- Exit RoboRealm
- Start RoboRealm
- You should now see that language being used in most of the interface
What is 'faceless mode'?
Since RoboRealm is often used in applications that provide their own interface, the actual RoboRealm main GUI interface is no longer needed. For the primary application to be the main focus RoboRealm can be set into faceless mode which means that the application will run more like a server than a GUI desktop application. When in 'faceless mode' the application does not provide any GUI interface and can instead listen on the API port for particular commands from the primary desktop application (that's why the API is so extensive). Using the faceless mode, you can write your own vision based application that provides the interface to the end user without RoboRealm being seen. You can even ensure that if RoboRealm is requested to show (CTRL-ALT-R key) that a username/password is required in order to view the interface. By using this technique, you can still access RoboRealm in a GUI manner but hide it when not needed for an end user. Read mode about the faceless mode setting in the Options page as an alternative method to the DLL interface.
Can RoboRealm run on the Raspberry PI?
No. RoboRealm is based on Windows and on an Intel chipset. As many functions are optimized for Intel architecture that takes advantage of MMX and SSE technology RoboRealm cannot simply be compiled for different architectures. If you are interested in smaller less expensive platforms you can try running on a WinBook ($80 at MicroCenter), TV-Stick ($100 at MicroCenter) or Netbooks. These platforms have been verified to run RoboRealm BUT will do so slower than most laptops or desktops. While simple color tracking does not require a powerful CPU its always best to purchase as fast a CPU as you can afford. An Intel i7 is ideal, but an i3 or i5 (i.e. multi-core CPU) can be sufficient in many cases. Keep in mind that vision processing is very CPU bound. A machine with limited graphics, screen size, disk size, etc. is fine with regards to vision processing and can help to keep costs down. Larger images require much more processing power than smaller ones!
While RoboRealm cannot run on smaller architectures you can create sensor acquisition platforms that run on the Raspberry PI, Edison, PCDuino, CHIP, Arduino, etc. and send information to a laptop/desktop running RoboRealm in order to be processed. RoboRealm has many interface possibilities that can be used to received data from these smaller remote systems.
Note, RoboRealm will NOT run on Windows RT systems as they are ARM (as apposed to Intel) based.
RoboRealm appears to be frozen! What can I do?
To ensure that changes in the UI (User Interface) do not update while processing an image the UI will only update inbetween pipeline iterations. This means if you have a very slow pipeline the interface will not appear to update until the pipeline has completed. This can have the appearance of slowing down or freezing the application on slow executing pipelines.
You can also pay attention to the gray numbers on the right side of the pipeline. Those numbers indicate the number of milliseconds that each module takes. Those modules with high numbers are the cause of the pipeline slowdown. Often these modules are ones that are attempting to connect to external devices and have not yet established a connection. Other modules such as the Stereo module will require significant processing resources depending on the size of the image being processed.
My webcam doesn't work with RoboRealm!
- Be sure another application (like Skype, FaceTime, etc.) isn't currently connected to the camera. Windows will only allow one application to connect to a webcan at a time. If you need to use the webcam in more than one application refer to the Virtual Camera capabilities in RoboRealm to make that possible.
- Test the camera with another application that you know has worked with the camera before. This will verify that a hardware issue is not causing the problem
- Make sure you have updated DirectInput drivers for the camera. RoboRealm uses DirectX to connect with USB cameras.
- Make sure you have enough power from your USB connection to your camera. If you have more than one USB device plugged into your PC/Desktop, temporarily remove them to ensure that the camera receives enough power to work correctly.
- If you have more than one camera connected to your USB device, remove all but one. More cameras will cause both the power and USB bandwidth to be lowered which can cause communication issues.
- Make sure your USB port is working correctly. Plug another USB device into the port to verify that the other device is powered and functioning.
- Make sure that you see your webcam under Control Panel->Devices. If the webcam is not present or grayed out it may be malfunctioning. You can try right clicking on the device and select Troubleshoot to see if that helps resolve the issue.
- Ensure that the cable connecting the webcam to the PC is as short as possible. USB cable length is limited to about 20ft without an extender. Even before that length, power and communication can start to fail or become erratic.