GC1350 configuration
Setting IP address
- Download and install the AVT/Prosilica GigE SDK from http://www.alliedvisiontec.com/us/products/software. This guide refers to GigE SDK (PvAPI) v1.24. There is a local copy of the SDK here for Linux and for Windows. The windows viewer is also available here.
- Download and install the AVT/Prosilica GigE Viewer
- Configure a PC ethernet port to IP 169.254.1.1 mask 255.255.0.0
- Connect the camera to the PC ethernet port and power on the camera.
- Start the Allied Vision Technology GigEIPConfig. One (or more) camera should be listed.
- Change the IP to fixed number. For the WFS in the lab the IP is 192.168.18.10-16. Subnet is 255.255.255.0, gateway is void
- Configure a PC ethernet port to IP 192.168.18.1 mask 255.255.255.0
- Start the Allied Vision Technology SampleViewer. It should list the camera in the Cameras window. Click on the wrench and open GigE ->IP to check that the correct IP address has been saved.
- Click on the eye to start acquisition. In the Wrench window Stats->StatFrameRate is 8.345 for a GC1350 with factory settings (1360x1024, Mono8 bit per pixel) using a 100Mbit ethernet connection and rise to 66Hz when using a small ROI 128x128
There is a bunch of command line tools coming with the AVT SW kit that can be very useful as they provide greater flexibility than the ARGOS sw.
They are located in /home/argos/Downloads/AVTCam/AVT
GigE SDK/bin-pc/x64
- SampleViewer allows to tweak all configuration and have a simple live viewer
- Stream2JPEG allows to dump frames as jpeg at maximum speed. See HowToAcquireFramesWithPatrolCameraAtFullSpeed
AVT software documentation
These are the documents used to develop the AVT DLM for the GC1350
Using AVT camera in IDL
- Unpack the allied_vision_technology_dlm.zip and add the unpacked folder to IDL path. The package is maintained by lbusoni@arcetri.astro.it
- If you're running windows 32 bit or if you already compiled the dynamic library, then skip the next steps (the compiled 32bit DLL is already included in the .zip file)
- Build the avt_dlm dynamic library (.dll on windows, .so on linux) using IDL and running build_avt_dlm.
- First of all install a C compiler (this procedure has been tested on XP with VC6.0 and Ubuntu 10.04 with gcc)
- Then read carefully the build_avt_dlm.pro (including comments in the heading) and edit what you believe needs to be edited (probably nothing)
- Start IDL and type the command "build_avt_dlm, /verb, SDK_DIR" where SDK_DIR is the full path of folder containing the AVT GigE SDK. This should have inc-pc and lin-pc as subfolders.
- A file avt_dlm.dll (avt_dlm.so under Linux) should have been created
- Add the folder containing avt_dlm.dll/.so and avt_dlm.dlm to the IDL_DLM_PATH. This can be done from the IDL GUI under Windows->Preferences->IDL->Paths->DLM_path or editing the idl.pref file
- Windows only - Hidden trick: when you install the AVT SDK it doesn't install properly the dll. So copy ...\Allied Vision Technologies\GigESDK\bin-pc\PvAPI.dll to C:\WINDOWS\system32
- Now restart IDL and give the command IDL> print, DLM_PATH ; check that the folder containing avt_dlm.dlm is in the list
- Give the command IDL>avt_version. IDL outputs the AVT SDK version (1 24 in my case). This means that window has been able to load the DLL. No communication with the camera is needed for that.
- Now plug the ethernet cable and be sure that your computer can communicate with the camera. If the two are on the subnet that is sure, but I think it can work even if they are not on the same subnet
- Give the command IDL> print, avt_list() IDL outputs the detected camera properties. If this happens the communication with the camera is ok.
- Use the avt object to communicate with the camera
Example of usage of the "avt" IDL object.
camera_list = avt_list()
print, camera_list
; open a camera. Put the right IP address in here
cam = obj_new('AVT', '192.168.18.10')
; acquire full frame a bin 1
cam->setBinning, 1 & cam->setFrameRate, 4 & cam->setExposure, 10d-3
ret = cam->getFrames(10, timestamp=timestamp, info=info)
for i=0,9 do tvscl, ret[*,*,i]
help, info[0], /str
; timestamp : BUG?
print, timestamp
; acquire full frame a bin 4
cam->setBinning, 4 & cam->setFrameRate, 20 & cam->setExposure, 0.5d-3
ret = cam->getFrames(10, timestamp=timestamp, info=info)
for i=0,9 do tvscl, ret[*,*,i]
help, info[0], /str
; acquire ROI 100x100 with top-left corner in [30,50] a bin 1
cam->setBinning, 1 & cam->setFrameRate, 50 & cam->setExposure, 10d-3
cam->setROI, [30,50,100,100]
ret = cam->getFrames(10, timestamp=timestamp, info=info)
for i=0,9 do tvscl, ret[*,*,i]
help, info[0], /str
obj_destroy, cam
Example of build of the dlm
IDL> build_avt_dlm, /verb, 'C:\Programmi\Allied Vision Technologies\GigESDK'
% Compiled module: BUILD_AVT_DLM.
% MAKE_DLL: Writing build script: C:\Documents and Settings\lbusoni\Documenti\adopt\idl\usr_lib\allied_vision_technology_dlm\avt_dlm_4816_LBUSONIPC.bat
% MAKE_DLL: Writing linker def file: C:\Documents and Settings\lbusoni\Documenti\adopt\idl\usr_lib\allied_vision_technology_dlm\avt_dlm_4816_LBUSONIPC.def
% MAKE_DLL: Running build script: C:\Documents and Settings\lbusoni\Documenti\adopt\idl\usr_lib\allied_vision_technology_dlm\avt_dlm_4816_LBUSONIPC.bat
Setting environment for using Microsoft Visual C++ tools.
cl /I"C:\Programmi\Allied Vision Technologies\GigESDK\inc-pc" -D_DLL -DMSWIN -DWIN32 -D_MT /nologo /I"C:\Programmi\ITT\IDL70\external\include" /c "C:\
Documents and Settings\lbusoni\Documenti\adopt\idl\usr_lib\allied_vision_technology_dlm\avt_dlm.c" /Fo"avt_dlm_4816_LBUSONIPC.obj"
avt_dlm.c
C:\Documents and Settings\lbusoni\Documenti\adopt\idl\usr_lib\allied_vision_technology_dlm\avt_dlm.c(606) : warning C4098: 'AvtSetAttribute' : 'void'
function returning a value
link /out:"avt_dlm_4816_LBUSONIPC.dll" /nologo /nodefaultlib /dll "avt_dlm_4816_LBUSONIPC.obj" /def:"avt_dlm_4816_LBUSONIPC.def" "C:\Programmi\ITT\IDL
70\bin\bin.x86\idl.lib" msvcrt.lib kernel32.lib "C:\Programmi\Allied Vision Technologies\GigESDK\lib-pc\PvAPI.lib" Ws2_32.lib
Creating library avt_dlm_4816_LBUSONIPC.lib and object avt_dlm_4816_LBUSONIPC.exp
Now you must add C:\Documents and Settings\lbusoni\Documenti\adopt\idl\usr_lib\allied_vision_technology_dlm to the IDL_DLM_PATH and restart