Advertisement

ED-AIC3000
User Manual
by EDA Technology Co., Ltd
built: 2024-12-30

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the ED-AIC3000 and is the answer not in the manual?

Questions and answers

Summary of Contents for EDA ED-AIC3000

  • Page 1 ED-AIC3000 User Manual by EDA Technology Co., Ltd built: 2024-12-30...
  • Page 2 This chapter introduces the product overview, packing list, appearance, indicator and interface. 1.1 Overview ED-AIC3000 is a 12-megapixel industrial smart camera based on Raspberry Pi CM5 with a sampling rate of up to 70 FPS. According to different application scenarios and user needs, different specifications of RAM and eMMC can be selected.
  • Page 3 ED-AIC3000 Function Definition 1 x TUNE button, one-touch autofocus button or user-defined button. 1 x Network connection indicator, which is used to check the status of the network connection. 1 x working status indicator, which is used to check the working status of the device.
  • Page 4 ED-AIC3000 1.4 Button The ED-AIC3000 series devices include 2 buttons, an TUNE button and a TRIG button. • The TUNE button has "TUNE" printed on the case. Pressing the button can realize one-touch automatic focus, and it supports that users to customize its functions.
  • Page 5 This section describes the definition and function of each interface in the product. 1.6.1 Power interface The ED-AIC3000 series devices include 1 power interface, which utilizes a 12-Pin M12 aviation connector. The power interface contains 1 power input, 1 serial port and 6 general-purpose GPIOs with the following pin definitions.
  • Page 6 ED-AIC3000 1.6.1.2 DI and DO interfaces ED-AIC3000 series devices contain one DI, two DOs, support 10V~30V DC input/output, with photoelectric isolation and overcurrent protection. Pin Definition The DI and DO pins are defined as follows: Signal CM5 GPIO NAME GPIO17...
  • Page 7 Pin ID Pin Name TRD0+ TRD0- TRD1+ TRD2+ TRD2- TRD1- TRD3+ TRD3- 1.6.3 USB-C interface ED-AIC3000 include a USB type-c interface, which supports flashing to eMMC by connecting to a Email: sales@edatec.cn / support@edatec.cn Phone: +86-15921483028(China) | +86-18217351262(Overseas) Web: www.edatec.cn...
  • Page 8 Lens, M12 fixed focal length lens with liquid module zoom. 1.8 RGB Lights ED-AIC3000 series devices contain 3 RGB lights, 3 RGB lights as a group. It supports to set the lights as red, green, blue, yellow or white through software, the default is off, users can customize according to the actual needs.
  • Page 9: Installing Device

    ED-AIC3000 2 Installing Device This chapter introduces how to install the device. Preparation: • One M4 and one M6 allen head screwdrivers have been prepared. • The mounting bracket and mounting screws (3xM4*8 with washers, 1xM6*10 with washers) have been prepared as shown below.
  • Page 10 ED-AIC3000 Insert 1 M4 screw with washer at the location of the center screw hole, then use an M4 hexagonal screwdriver to tighten the M4 screw clockwise to secure the bracket to the device. (Optional) Rotate the Mounting bracket to adjust the mounting direction as required.
  • Page 11 ED-AIC3000 Adjust the appropriate installation position and angle according to different project requirements on site. It is recommended to use a center screw and one peripheral screw for fixing. Email: sales@edatec.cn / support@edatec.cn Phone: +86-15921483028(China) | +86-18217351262(Overseas) Web: www.edatec.cn...
  • Page 12: Booting The Device

    PC. The factory image of ED-AIC3000 series devices enables VNC by default, and sets the device IP to a static IP: 192.168.1.10. Users can remotely connect to the device through VNC and enter the device's desktop system.
  • Page 13 ED-AIC3000 Default username: pi; default password: raspberry. Email: sales@edatec.cn / support@edatec.cn Phone: +86-15921483028(China) | +86-18217351262(Overseas) Web: www.edatec.cn...
  • Page 14: Configuring System

    ED-AIC3000 4 Configuring System This chapter introduces how to configure system. 4.1 Compile Camera Demo How to compile and startup Camera test example. Go to the folder where the test file is located. /usr/share/ed-aic-lib/examples Compile the test code • Python sudo python test_camera.py...
  • Page 15 RGB lights, and control of outputs. 4.5.1 C++ environment The control function of AI Camera I/O in C++ environment is as follows: Function Definition eda::EdaIo *em = eda::EdaIo::getInstance() Get IO control instance void setup() Initialize IO settings void openLaser()
  • Page 16 Set up RGB lighting 4.5.2 Python3 language environment The control function of AI Camera I/O in Python3 language environment is shown below: Function Definition eda = EdaIo.singleton() Get IO control instance eda.setup() initialization eda.openLaser() Turn on the laser eda.closeLaser()
  • Page 17 , the value range is 1~4, corresponding to different partitions 4.5.3.2 Python Initialization • Get I/O instance before manipulating IO eda = EdaIo.singleton() • Initialize the instance eda.setup() I/O control supports registering callback functions for events. • input input event registerInput(func_input) •...
  • Page 18 ED-AIC3000 eda.setDo1High(false) eda.etDo2High(false); • Control of two outputs Control the lights (initialization must be done first) • Control the sidelight color eda.setRgbLight(1); ◦ 0: OFF ◦ 1: Red ◦ 2: Green ◦ 3: Blue ◦ 4: Yellow ◦ 5: White •...
  • Page 19 The following section describes the specific operations of image download and eMMC flashing. 5.1 Download System image You can download the ED-AIC3000 system image of the corresponding model according to actual needs. The download path is shown in the following table.
  • Page 20 ED-AIC3000 Since the Raspberry Pi's Rpiboot tool does not support the Raspberry Pi CM5 to be disked on Windows operating system for the time being, you need to disk the device on Linux operating system. Steps: The steps are described using Windows system as an example.
  • Page 21 ED-AIC3000 d. Execute the following command to the mass-storage-gadget64 directory. mass-storage-gadget64 e. Disconnect power to the device, then press and hold the TRIG button to repower the unit. f. Execute the following commands in the mass-storage-gadget64 directory to start disk tokenization.
  • Page 22 ED-AIC3000 When the formatting is complete, click "OK" in the prompt box. Close SD Card Formatter. Open Raspberry Pi Imager, select "CHOOSE OS" and select "Use Custom " in the pop-up pane. According to the prompt, select the OS file under the user-defined path and return to the main page.
  • Page 23 Close Raspberry Pi Imager, remove USB cable and power on the device again. 5.3 Installation of firmware packages After flashing the standard Raspberry Pi OS on the ED-AIC3000 device. You need to configure the system by adding edatec apt source and installing firmware packages to make the system work properly, the following is an example of Debian 12 (bookworm) desktop version.
  • Page 24 ED-AIC3000 Execute the following command to download the corresponding firmware package. sudo apt install ed-aic3x00-lib ed-libgpio-v2 Execute the following command to check whether the firmware package is installed successfully. dpkg grep The result in the following figure indicates that the firmware package has been installed successfully.
  • Page 25 This chapter introduces the definition and composition of SDK to help users understand the SDK better. 1.1 SDK Introduction The SDK of ED-AIC3000 series Camera is a set of Software Development Kit (SDK), which provides users with the interfaces required by the upper layer applications, and facilitates the secondary development of the Camera.
  • Page 26: Function Description

    2.1.2 Getting Instance and Initializing Before operating I/O, you need to obtain an I/O instance and initialize the instance. The steps are as follows. Getting an I/O instance. eda::EdaIo *em = eda::EdaIo::getInstance(); Initializing the instance. em->setup(); Email: sales@edatec.cn / support@edatec.cn Phone: +86-15921483028(China) | +86-18217351262(Overseas) Web: www.edatec.cn...
  • Page 27 Sample: #include "eda/eda-io.h" void trigger_input(int b){ printf("[Test] Tirgger input: %d\n", b); int main(int argc, char *argv[]){ eda::EdaIo *em = eda::EdaIo::getInstance(); em->registerInput(trigger_input); em->setup(); ..2.1.4 Controlling I/O The I/O is used to control the laser on/off, status indicator on/off, alarm indicator on/off and 2 output signals enable/disable.
  • Page 28 ED-AIC3000 em->setScanStat(true); em->setScanStat(false); • Alarm indicator On/Off em->openAlarm(); em->openAlarm(); • 2 outputs enable/disable em->setDo1High(false); em->setDo2High(false); 2.1.5 Controlling light Both the camera side lights and area lights can be controled independently. Preparation Initialization of the instance has been completed. Operating Instructions •...
  • Page 29 ED-AIC3000 class EdaIo{ public: static EdaIo* getInstance(); static void close_io(); ~EdaIo(); * @brief Laser On void openLaser(); * @brief Laser Off void closeLaser(); * @brief set status indicator * @param good void setScanStat(bool good); * @brief alarm indicator On void openAlarm();...
  • Page 30 ED-AIC3000 * @brief set output2 to [high/low] * @param high void setDo2High(bool high); // void setAimerColor(RGBColor color); * @brief register input trigger callback function * @param callback void registerInput(IoTrigger callback); * @brief register button callback function * @param callback void registerTrigger(IoTrigger callback);...
  • Page 31 2.2.3 Getting Instance and Initializing After importing the library environment, you need to obtain an IO instance and initialize the instance. The steps are as follows. Getting an I/O instance. eda = EdaIo.singleton(); Initializing the instance. eda.setup(); 2.2.4 Event Callback Function I/O control supports registering callback functions for events, including registering Input, registering Trigger button, and registering Tune button.
  • Page 32 ED-AIC3000 #!/usr/bin/python3 from libedaio import EdaIo,registerInput def func_input(v): print("[Debug] Trigger: input!", v) def main() -> int: eda = EdaIo.singleton(); registerInput(func_input) eda.setup() … if __name__ == "__main__": main() 2.2.5 Controlling I/O Using I/O to control the on/off of the laser, the on/off of the status indicator, the on/off of the alarm indicator and the enable/disable of the 2 outputs.
  • Page 33 # Laser On # eda.closeLaser(); # Laser Off eda.setScanStat(True); # Set status indicator eda.openAlarm(); # Alarm indicator on # eda.closeAlarm(); # Alarm indicator off eda.setDo1High(True); # Set output1 eda.setDo2High(False); # Set output2 eda.setRgbLight(1); # Set side light,0: Off; 1: Red; 2: Green; 3: Blue 4: Yellow 5: White Email: sales@edatec.cn / support@edatec.cn...
  • Page 34 ED-AIC3000 2.3 Sensor Control Examples ,official information Camera Sensor control software based on open source libraries picamera2 ,here are Picamera2 Manual (https://datasheets.raspberrypi.com/camera/picamera2-manual.pdf) some simple instructions and examples。 2.3.2 Operating Steps Before operating Camera, you need to import the IO module and then get the IO instance and initialise it (for details, see 2.2.2 Importing Module...
  • Page 35 ED-AIC3000 3.1 Code Example The following is an example of how to implement the function ‘Turn on the camera and wait for 2s to capture a picture’, using Python lines to write the code. The detailed code is as follows...
  • Page 36 ED-AIC3000 sudo python test123.py • test123.py : means the code file written in Chapter 3.1 Code Example. After successful operation, you can see that the laser lights up and goes out after waiting for 2 seconds. Email: sales@edatec.cn / support@edatec.cn Phone: +86-15921483028(China) | +86-18217351262(Overseas) Web: www.edatec.cn...

Table of Contents