1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 <2020> 2021 2022 2023 2024 | Index | 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 <2020> 2021 2022 2023 2024 |
<== Date ==> | <== Thread ==> |
---|
Subject: | ADVimba wrong camera initialization |
From: | Kacper Klys via Tech-talk <tech-talk at aps.anl.gov> |
To: | "tech-talk at aps.anl.gov" <tech-talk at aps.anl.gov>, Marcin Lukaszewski <marcin.lukaszewski at e9controls.com> |
Date: | Wed, 5 Feb 2020 17:48:35 +0000 |
I've been strugling with ADVimba module from areaDetector.
After connecting and launching ioc with ADVimba driver I receive this error message:
02-05-2020 16:50:47.168 [T] Line 976 : resend returned error
2020/02/05 16:50:47.168 ADVimba::processFrame error GetReceiveStatus returned 0 frameStatus=-1
I checked with VimbaViewer tool that camera works properly and I am able to see any images. I have tried also pymba and I can catch frames as well.
I noticed that when I launch VimbaViewer and I close program, then, IOC based on ADVimba driver works fine.
I observed the same behaviour when I run and close another IOC with Prosilica driver.
Problem appears only when I disconnect camera from the power supply.
I have checked two camera models:
MANTA G125B, MAKO B234B
Version of modules I use:
EPICS ver 3.15.7
areaDetector ver 3-8
ADVimba ver 1-1
ADGenICam ver 1-2
My st.cmd:
#!../../bin/linux-x86_64/Camera
< envPaths
errlogInit(20000)
cd "${TOP}"
## Register all support components
dbLoadDatabase "dbd/Camera.dbd"
Camera_registerRecordDeviceDriver pdbbase
# Location of transport layer definition files
epicsEnvSet("GENICAM_GENTL64_PATH", "$(ADVIMBA)/bin/$(ARCH)")
# Prefix for all records
epicsEnvSet("PREFIX", "MANTA:")
epicsEnvSet("MODULE", "ADVimba:")
# IP address
epicsEnvSet("CAMERA_ID", "169.254.97.150")
# The port name for the detector
epicsEnvSet("PORT", "VMB1")
# Really large queue so we can stream to disk at full camera speed
epicsEnvSet("QSIZE", "2000")
# The maximim image width; used for row profiles in the NDPluginStats plugin
epicsEnvSet("XSIZE", "1216")
# The maximim image height; used for column profiles in the NDPluginStats plugin
epicsEnvSet("YSIZE", "1936")
# Define NELEMENTS to be enough for a 1936x1216x1 (color) image
epicsEnvSet("NELEMENTS", "23541760")
# NELEMENTS * 10
epicsEnvSet("EPICS_CA_MAX_ARRAY_BYTES", "235417600")
# Paths with db files
epicsEnvSet("EPICS_DB_INCLUDE_PATH", "$(ADCORE)/db:$(ADGENICAM)/db:$(ADVIMBA)/db:$(ADPROSILICA)/db")
# Paths to templates
#epicsEnvSet("GENICAM_DB_FILE", "$(ADGENICAM)/db/AVT_Manta_G125B.template")
epicsEnvSet("GENICAM_DB_FILE", "$(ADGENICAM)/db/AVT_MAKO_G_234B.template")
epicsEnvSet("ADVIMBA_DB_FILE", "$(ADVIMBA)/db/vimba.template")
# array size
epicsEnvSet("ARRAYSIZE", "90000")
# ADVimbaConfig(const char *portName, const char *cameraName, size_t maxMemory, int priority, int stackSize)
ADVimbaConfig("$(PORT)", "$(CAMERA_ID)", 0, 0, 0)
# Main database
dbLoadRecords("$(ADVIMBA_DB_FILE)", "P=$(PREFIX),R=$(MODULE),PORT=$(PORT)")
# Load the autogenerated file of GenICam features
dbLoadRecords("$(GENICAM_DB_FILE)", "P=$(PREFIX),R=GenICam:,PORT=$(PORT)")
# Create a standard arrays plugin, set it to get data from first simDetector driver.
NDStdArraysConfigure("Image1", 3, 0, "$(PORT)", 0, 0)
# This waveform only allows transporting 8-bit images
dbLoadRecords("NDStdArrays.template", "P=$(PREFIX),R=image1:,PORT=Image1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=$(PORT),TYPE=Int8,FTVL=UCHAR,NELEMENTS=$(ARRAYSIZE)")
cd "${TOP}/iocBoot/${IOC}"
iocInit()
Any suggestions or comments would be appreciated.
Kacper Kłys
email: kacper.klys at e9controls.com
|
E9 Controls Limited, 86-90 Paul Street London, EC2A 4NE |
Reg no.10337670 |
|
|