Method and systems for compensating for a deviation in a plurality of working poses of a manipulator of an autonomous charging device

EP4713170A1Pending Publication Date: 2026-03-25ROCSYS BV
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
EP · EP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-06-11
Publication Date
2026-03-25

AI Technical Summary

Technical Problem

Autonomous charging devices face challenges in accurately aligning the connector with the charging port due to inaccuracies in robotic arm kinematics, external factors, and software limitations, leading to failed connections and potential damage.

Method used

A method and system that minimize deviations between target and actual poses of the manipulator by using a compensation function derived from the relationship between motion commands and actual poses, incorporating image acquisition, computer vision, and motion control units to ensure precise positioning and alignment.

Benefits of technology

The solution enhances the accuracy and reliability of the charging process by minimizing deviations and improving the robotic arm's precision, reducing the risk of failed connections and damage, and adapting to dynamic charging environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure EP2024066121_02012025_PF_FP_ABST
    Figure EP2024066121_02012025_PF_FP_ABST
Patent Text Reader

Abstract

A method for minimizing deviations between a target and an actual pose of an autonomous charging device manipulator, adapted to connect a charging connector to an electric vehicle socket, comprising: obtaining a compensation function covering at least a part of a workspace of the manipulator, the compensation function utilizing a relationship between at least one motion command and a corresponding actual pose, and operating the manipulator based on the obtained compensation function such that the resulting actual pose minimally deviates from the target pose, wherein the relationship between at least one motion command and a corresponding actual pose is obtained by a method comprising an image acquisition device attached to a moving part of the manipulator to acquire an image containing a visible fiducial marker placed at a referential pose; instructing the manipulator to move to acquire an image of the fiducial marker; using the image to determine the relative pose of the fiducial marker with respect to the image acquisition device; computing the actual pose of the moving part of the manipulator using the referential pose and the determined relative pose of the fiducial marker with respect to the image acquisition device; and fitting a template function that relates the at least one motion command to the computed actual pose.
Need to check novelty before this filing date? Find Prior Art

Description

[0001]METHOD AND SYSTEMS FOR COMPENSATING FOR A DEVIATION IN A PLURALITY OF WORKING POSES OF A MANIPULATOR OF AN AUTONOMOUS CHARGING DEVICE ABSTRACT The present invention relates to a method for compensating for a deviation in a plurality of working poses of a manipulator of an autonomous charging device (ACD), the ACD configured for connecting a charging connector into a vehicle’s charging socket. TECHNICAL FIELD OF THE INVENTION The present invention generally relates to actuated autonomous charging devices and methods and systems related thereto, which enable the autonomous charging of electric vehicles, the systems and methods making use of artificial intelligence and machine learning. Methods and systems in accordance with the invention aim to improve the performance and reliability of an autonomous charging device (ACD). In particular, the present method and system allow for compensating for at least a deviation in one or more working poses of a manipulator of an ACD, the ACD configured for connecting a charging connector into a vehicle’s charging socket. BACKGROUND OF THE INVENTION With the increasing adoption of electric vehicles, the demand for efficient and autonomous charging solutions has grown significantly. Autonomous robotic systems have been developed to automate the charging process, eliminating the need for human intervention. These systems typically utilize computer vision techniques to detect and navigate towards the charging port of the electric vehicle. To ensure a successful connection between the connector and the socket, robots must accurately determine the position of the EV and / or the EV socket and align the connector in a continuous and reliable manner. Several components may contribute to an unsuccessful plug-in and undesirable operational performance, requiring thus further improvements. Various solutions have been proposed, including the use of magnetic coupling to ensure an accurate connection between the connector and the socket. However, many known techniques require modifications to either the EV or the connector, which may affect the solution's scalability and accessibility in the market. Recent advancements in ACD technology have led to improvements in identifying the position of an electric vehicle's socket and directing the charger's connector to the charging port without the need for human intervention or modifications to the vehicle or its charging port. These improvements rely on the use of compliant actuated robotics, computer vision and neural networks to accurately identify the vehicle or its charging port, enabling the ACD to complete the plug-in and plug-out process with increased reliability. Devices for this purpose are known in the art, for instance from the international patent applications PCT / NL2020 / 050266, PCT / NL2021 / 050115, PCT / NL2021 / 050410, PCT / NL2021 / 050495, PCT / NL2021 / 05061, PCT / EP2022 / 062233, from the same applicant, all of which are herein incorporated by reference. ACD’s in accordance with the present disclosure may include compliance mechanisms to ensure a safer plug-in process and are configured to support several connectors, including but not limited to Type 1, Type 2, CCS-1, CCS-2, CHAdeMO, Tesla, and MCS connectors, among others. Ensuring a precise positioning of the connector in the socket before plugging it in is a persistent challenge in achieving successful mating. Accuracy required for this positioning is in the range of a few millimeters, an accuracy that should be met by the ACD rather than relying on the vehicle's positioning, as the vehicle may not be automatically positioned with such accuracy. Autonomous charging devices (ACDs) include various components and may have intrinsic inaccuracies due to the nature of robot kinematics. These inaccuracies may arise from either the hardware or software components of the ACD. Autonomous charging devices as the ones described in the state of the art include manipulation systems. ACD’s may include at least one image acquisition device, such as a camera and a physical manipulator, such as an actuated robotic arm, that can reach into socket of the vehicle and perform the mating of the connector with said socket. The ability of a robotic arm to manipulate a connector with sufficient accuracy is critical in the ACD overall performance. In particular, the robotic arm should be able to perform with high accuracy preferably throughout its entire workspace. This accuracy may depend on a suitable correlation between the coordinate system of the camera and the coordinate system of the robotic arm. Existing autonomous robotic systems face challenges in accurately aligning the connector of the robotic arm manipulator with the charging port on the electric vehicle. Discrepancies arise due to various factors, such as imprecise positioning and uncertainties inherent in the system, leading to misalignment of the connector and the charging port. These inaccuracies may result in failed connection attempts, interrupted charging sessions, and potential damage to the charging infrastructure or the electric vehicle. Existing autonomous robotic systems often face challenges in achieving the desired pose of the robotic arm manipulator during the charging process. Inaccuracies in the kinematic control of the robotic arm, such as joint position errors, calibration uncertainties, and mechanical tolerances, may lead to deviations between the intended and actual positions of the connector. These discrepancies hinder the successful engagement of the connector with the charging port, preventing the establishment of a secure and reliable electrical connection. External factors also contribute to the technical problem, as the charging environment is subject to dynamic changes. Factors such as vibrations, variations in ambient temperature, and physical obstacles may further disrupt the accuracy of the robotic arm's movements. External influences introduce additional uncertainties, affecting the alignment and positioning of the connector, and subsequently hindering the successful charging process. The software controlling the autonomous robotic system plays a crucial role in addressing the technical problem. However, limitations in the software algorithms used for trajectory planning, motion control, and path optimization may result in inaccuracies in the robotic arm's movements. Inadequate sensor fusion, insufficient feedback control, or delays in processing data may lead to deviations from the desired target pose or trajectory, impacting the alignment of the connector with the charging port. Furthermore, computer vision algorithms utilized for perceiving the charging environment and detecting the charging port may be susceptible to inaccuracies. Challenges such as occlusions, reflections, varying lighting conditions, and the presence of other objects may impede the reliable detection and recognition of the charging port, affecting the precise positioning of the robotic arm and connector. Consequently, there is a need for an improved autonomous robotic system that addresses the technical problem by mitigating the inaccuracies related to the robotic arm, its kinematics, external factors, software, and computer vision, among others. The subsequent sections of this patent application will provide a detailed description of features and mechanisms developed to overcome these challenges and ensure accurate alignment and successful plugging of the connector into the electric vehicle's charging port SUMMARY OF THE INVENTION The present invention provides a method that overcomes the limitations of previous approaches and offers additional benefits. In one embodiment, the present invention relates to a method for minimizing deviations between target poses and actual poses target poses and actual poses of a manipulator of an ACD, the manipulator adapted to connect a charging connector into a socket of an electric vehicle. In one embodiment, the present invention relates to a system for minimizing deviations between target poses and actual poses of a manipulator of an ACD, the manipulator adapted to connect a charging connector into a socket of an electric vehicle. BRIEF DESCRIPTION OF THE DRAWINGS Figure 1 is referential diagram illustrating an ACD (1) supporting the connection of a charger connector (2) into the socket (4) of an electric vehicle (5). Figure 2 is a schematic diagram of an autonomous charging device (1). Depicted is a robotic arm (10), a motion control unit (20), a computer vision unit (30), a control system (40) and an image acquisition device (50). Figure 3 is a flow chart of process steps of a method according to a first embodiment of the invention. BRIEF DESCRIPTION OF THE PRIOR ART Some existing systems have various shortcomings relative to certain applications. Accordingly, there remains a need for further contributions in this area of technology. International Patent Application WO2020142496A1 describes a method for training a robot coupled with a camera, the process comprising setting a robot or camera parameter; capturing a training image of a training object with the camera using the robot or camera parameter; changing the setting and capturing another training image and repeating such setting and capturing to obtain a plurality of training images based on different settings; training a system to recognize the training object based on the plurality of training images; and evaluating the system using pre-selected test images. This document describes the training of an industrial robot aimed at completing a manufacturing process and does not make any reference to method for compensating for a deviation in a plurality of working poses of a manipulator of an autonomous charging device. DETAILED DESCRIPTION OF THE INVENTION In the following description, for purposes of explanation and not limitation, specific details are set forth, such as particular methods, steps, devices, components etc. in order to provide a thorough understanding of the present invention. However, it will be apparent to one skilled in the art that the present invention may be practiced in other embodiments that depart from these specific details. In an embodiment, the present invention relates to a method for compensating for a deviation in a plurality of working poses of a manipulator of an autonomous charging device (ACD), the ACD configured for connecting a charging connector into a vehicle’s charging socket. Autonomous charging devices An autonomous charging device (or simply, a robot) as referred herein, may comprise several hardware and software components. In particular, the ACD may comprise a robotic arm (10) for supporting and moving a vehicle charging connector, a motion control unit (20) and a computer vision unit (30) for pose estimation, comprising, or in communication with at least a neural network, the motion control unit being configured to control the motion of the robotic arm for plugging the connector into a vehicle socket using a pose estimation from the computer vision unit. The terms robotic arm and manipulator may be used interchangeable throughout the present disclosure. The ACD may include a control system (40) and may further comprise, or be in communication with, an image acquisition device (50), such as a camera to acquire an image of the vehicle socket as an input for the computer vision unit. Preferably, the computer vision unit (30) is configured to determine the pose of a fiducial marker in an image with respect to the camera that has acquired the image. The robotic arm (10) may be a controllable actuated mechanism comprising means to support, either in a releasable manner or not, a vehicle charger connector, and is able to enable such autonomous charging process. Various types of robotic arms are specifically suitable for an autonomous charging device in accordance with the embodiments of the present disclosure, and include SCARA robot arms, parallel robot arms, articulated robot arms, and cartesian robot arms, among others, but other types may also be utilized. SCARA robotic arms in accordance with the invention may comprise at least two parallel rotary joints and a vertical prismatic or linear joint; parallel robotic arms in accordance with the invention include a parallel kinematic structure with multiple arms connected to a common base; articulated robotic arms in accordance with the invention comprise multiple interconnected rotary joints, providing a wide range of motion similar to that of a human arm. The ACD further includes one or more actuators responsible for moving the various components of the autonomous charging device (ACD). Actuators enable the robotic arm (10) to perform precise and controlled movements, facilitating the positioning and manipulation of the vehicle charging connector. The motion control unit (20) utilizes the inputs from the computer vision unit (30), which incorporates, or is in communication with, at least a neural network, to estimate the pose of the socket and provide the necessary commands to the actuators. In addition to the mentioned types of robotic arms, the robotic arm may be equipped with other components to impart a compliant motion. Additional components may include an hexapod mechanism, a Stewart platform, or other similar mechanisms which may provide additional degrees of freedom to the robotic arm as well as flexibility and compliance in the robotic arm's motion. These mechanisms enable the robotic arm to adapt to varying conditions, handle uncertainties, and perform tasks that require compliant interactions, such as securely plugging the vehicle charging connector into the socket. The selection of a suitable robotic arm (10) may depend on various factors, including the specific features and requirements of the ACD. Additionally, considerations such as the desired degrees of freedom, payload capacity, workspace constraints, and task specifications may play a role in determining the appropriate robotic arm for the ACD. The number of degrees of freedom (DOF) shall determine the types of movements and orientations the robotic arm can achieve. An ACD in accordance with the present invention may be disposed to have one, two or three or more DOF. In an ACD disposed to have one DOF, there is a single axis of rotation or linear movement. The arm can rotate or extend / retract along this axis. An ACD disposed to have two DOF has two independent axes of motion, which may be rotational or translational. An ACD disposed to have three DOF, includes an another independent axis of motion to the 2-DOF arm which allows the arm to move in three-dimensional space. In robotic disposed to have more than three degrees of freedom, each additional degree of freedom introduces an additional axis of motion, either a rotational or translational motion along or about the X, Y, and Z axes. This configuration allows for positional adjustments, making it suitable for limited and predictable workspaces. An ACD with six DOF provides the full range of translational and rotational movements and allows for a more precise positioning in all three translational directions (X, Y, and Z) as well as three additional rotational degrees of freedom around each of these axes. In the context of the invention, an image acquisition device (50) refers to a hardware component or system integrated or mounted onto a moving part of the robotic arm, designed to capture visual data or images of the surrounding environment during the arm's motion, operation or during the method in accordance with the independent claims. It may include, but is not limited to, cameras, sensors, or other optical devices capable of capturing visual information. The image acquisition device is strategically positioned and oriented on the moving part to provide a desired field of view for capturing images or video footage. The captured visual data can be used for various purposes, such as object recognition, pose estimation, navigation, or other computer vision applications related to the operation of the robotic arm. By mounting the image acquisition device on the moving part, it ensures that the captured visual information corresponds to the arm's perspective and facilitates real-time visual perception and analysis during the arm's motion or manipulation tasks. In accordance with the invention, sensors may be mounted on, or around the ACD and be used to capture data of the vehicle, the vehicle socket or its surroundings. Multiple sensors may be mounted on the same ACD and may be of various types to gather several types of part / object information. Sensors include sensors collecting data, such as force, light, wind, geographic position and orientation, temperature and pressure sensors, as well as any combinations thereof. Sensors in accordance with the invention may also provide date and time on which the data was captured. The autonomous charging process The ACD connecting process according to the present invention includes at least the steps of determining the pose of a vehicle charging port (the vehicle charging port including the socket cover, the socket features, the socket pins, fiducial features, markers or a combination thereof), moving a vehicle charging connector towards the vehicle charging port, connecting the charger into the vehicle socket, allowing the charging of the vehicle to take place, optionally releasing the connector from the ACD, and optionally disconnecting the charging connector. The pose of the vehicle socket is preferably determined by a computer vision unit of the ACD (or which is in communication with such ACD) based on a neural network which utilizes image data from the vehicle socket to allow a pose estimation by the computer vision unit, the pose including at least one of the position and orientation of the socket. In the present disclosure, the terms socket, charging inlet, or simply, inlet, may be used interchangeable. Due to the nature of kinematic models, the ACD may be subject to several intrinsic and / or extrinsic factors which may result in an inaccurate motion of the robot end-effector, inaccurate pose estimation of the socket and / or an unsuccessful mating of the connector into the socket. Said inaccuracies may be a consequence of a hardware and / or software component of the ACD. ACD components which may result in one more inaccuracies include image acquisition device (50) hardware inaccuracies, image acquisition device (50) calibration, ACD kinematics, slack in hardware components, inaccuracies related to components providing physical compliance, motion control unit, and computer vision unit, as well as hardware wear and tear, among others. An ACD according to the invention is intended to be deployed to the field, such as an EV charging station where one or more charging devices are preferably positioned to facilitate the autonomous charging of such EV’s. An ACD may require one or more calibration processes to achieve a suitable performance in the field, wherein said calibration processes may take place at different situations. Said calibrations may include i) intrinsic calibration of the camera (to compensate e.g., for lens distortion), which may take place before assembly or after installation of the ACD in the field; ii) extrinsic calibration of the camera to find the exact reference frame with respect to the rest of the kinematic chain of the system may occur upon assembly or after installation in the field, i.e., a hand to eye calibration; and iii) motion control unit calibration, aimed at calibrating the motion behavior (such as control accuracy and / or model accuracies) which may take place during or after assembly, upon commissioning of the robot, at subsequent stages, or even during operation. Upon deployment of the ACD, or prior to its deployment, it is desired to compensate for any existing or remaining deviations in poses of the ACD manipulator throughout its workspace in order to ensure that any deviations not previously compensated through either intrinsic, extrinsic and / or motion control unit calibration are eventually compensated for. The present invention provides for a method and system for a minimizing deviations between a target pose and an actual pose of a moving part of an autonomous charging device (ACD) manipulator. In particular, a method for minimizing deviations between a target pose and an actual pose of a moving part of an autonomous charging device (ACD) manipulator, the manipulator adapted to connect a charging connector to an electric vehicle socket, the method comprising: obtaining a compensation function covering at least a part of a workspace of the manipulator, wherein the compensation function utilizes a relationship between at least one motion command and a corresponding actual pose, and operating the manipulator based on the obtained compensation function such that the resulting actual pose minimally deviates from the target pose, wherein the relationship between at least one motion command and a corresponding actual pose is obtained by: having an image acquisition device attached to a moving part of the manipulator, the device disposed to acquire an image containing a visible fiducial marker placed at a referential pose; instructing the manipulator to move using at least one motion command and acquiring an image of the fiducial marker; using a computer-vision unit and the image for determining the relative pose of the fiducial marker with respect to the image acquisition device; computing the actual pose of the moving part of the manipulator using the referential pose of the fiducial marker and the determined relative pose of the fiducial marker with respect to the image acquisition device; and fitting a template function that relates the at least one motion command to the computed actual pose. Furthermore, an autonomous charging device (ACD) system is disclosed, which comprises A manipulator adapted to connect a charging connector to an electric vehicle socket; An image acquisition device attached to a moving part of the manipulator; A computer vision module; and A motion control unit, wherein the motion control unit device is configured to carry out the following actions: obtaining a compensation function covering at least a part of a workspace of the manipulator, wherein the compensation function utilizes a relationship between at least one motion command and a corresponding actual pose, and operating the manipulator based on the obtained compensation function such that the resulting actual pose minimally deviates from the target pose, wherein the relationship between at least one motion command and a corresponding actual pose is obtained by: having an image acquisition device attached to a moving part of the manipulator, the device disposed to acquire an image containing a visible fiducial marker placed at a referential pose; instructing the manipulator to move using at least one motion command and acquiring an image of the fiducial marker; using a computer-vision unit and the image for determining the relative pose of the fiducial marker with respect to the image acquisition device; computing the actual pose of the moving part of the manipulator using the referential pose of the fiducial marker and the determined relative pose of the fiducial marker with respect to the image acquisition device; and fitting a template function to that relates the at least one motion command to the computed actual pose. Pose In the context of the invention, the term "pose" refers to the spatial configuration of an object relative to a given coordinate system. Pose can be represented mathematically in different ways, each of which is interchangeable. One such representation is a six-element vector, consisting of the object's translational displacement along the x, y, and z axes, and its rotational orientation around the roll, pitch, and yaw axes. As used herein, the term actual pose refers to the real-time position and orientation of the robotic arm manipulator, including its end effector or connector holder, relative for example, to a defined coordinate system. Actual pose may represent the physical configuration and alignment of the robotic arm at any given moment during the charging process. The target pose represents the intended configuration and alignment that the robotic arm should attain to achieve a particular objective, such as plugging in the charging connector accurately. In the context of the present invention, the actual pose represents the physical state of the robotic arm in real-time, while the target pose serves as the reference configuration that the arm strives to achieve to complete the charging task successfully. Moving part of the robotic arm or manipulator In the context of the invention, the term moving part of the robotic arm or manipulator refers to a specific component or portion of the robotic arm that exhibits mobility and is capable of undergoing controlled motion relative to other components or parts of the robotic arm and / or the ACD. It may encompass segments, links, or joints of the robotic arm that enable its articulation and manipulation capabilities. The moving part can be driven by actuators, motors, or other mechanisms to achieve various degrees of freedom, allowing the robotic arm to perform desired motions, positions, and orientations required for specific performing the autonomous charging process. Preferably, the moving part represents the portion of the robotic arm which is configured to support the charging connector and is the part of the ACD for which a higher pose accuracy is desired in order to achieve a successful connection process. The moving part may be a component of the ACD, such as the robotic arm end effector or a connector holder attached to the end effector. In some cases, the connector may be embedded to the robotic arm or to any portion thereof, thus the moving part may be the connector itself. Motion command In the context of the invention, the term motion command refers to at least one instruction or set of instructions to move a moving part of the manipulator from a current position to a desired or target end pose or position, also referred to as the target pose. Motion command is used when instructing the manipulator to move using such least one motion command and acquiring an image of the fiducial marker. The motion command may include instructions such as coordinates, speed, acceleration, waypoints, and other parameters that may be used to control the movement of the moving part of the manipulator. The target pose may be specified in terms of Cartesian coordinates, joint angles, or other referential parameters. Furthermore, the motion command may also encompass a set of target poses, where the robot stands still at each pose and potentially performs additional actions, such as acquiring an image or executing a specific task. In some cases, waypoints involve continuous motion without the need for the robot to come to a complete stop at each point. In some cases, waypoints involve non-continuous motion wherein the manipulator comes to one or more stops at each point. Motion command in the context of this invention may encompass both individual target poses and sets of poses, as well as waypoints with and without full stops. In some cases a motion command may also include other ACD parameters such as the positioning of certain actuators and the angles formed by their actuators. In some cases, such as an ACD with multiple robotic arms, the motion command may include instructions on which arm to use, as well as the desired orientation of the arm. Similarly, in a robot with multiple joints, the motion command may include instructions on the desired joint angles and the positioning of the actuators controlling those joints. Similarly, in a robot comprising a robotic arm equipped with an hexapod or a Stewart platform, the motion command may include instructions on the desired angles and the positioning of the actuators controlling the hexapod motion. In some cases, a motion command may also include one or more waypoints. These waypoints may serve as intermediate positions that the robotic arm should pass through while moving towards the target pose. By incorporating waypoints, the robotic arm can follow a planned path, allowing for controlled movements during the charging process. In some cases, waypoints may act as checkpoints where the image acquisition device, which is preferably mechanically mounted on the robotic arm can record visual data of the surroundings, charging port, or any relevant objects. By including these additional parameters in the motion command, the motion control unit may generate a more precise and accurate trajectory for the manipulator to follow. In some cases, when a motion command is given to, or generated by the ACD, the ACD motion control unit (20) interprets the command and generates the appropriate trajectory for the robot arm to follow. During operation, the motion control unit operates the manipulator based on the compensation function such that the resulting actual pose minimally deviates from the target pose, such as by generating the appropriate trajectory for the robot arm to follow based on a motion command. Trajectory may be calculated using kinematic equations that take into account the ACD physical characteristics and the desired motion parameters specified in the motion command. In some cases, the motion command may include a specific sequence of waypoints or trajectory that the a moving part of the manipulator should follow to reach the desired end pose. Once the trajectory has been generated, the motion control unit sends commands to at least one ACD actuator or actuators to execute the motion. During the motion, ACD's feedback sensors may provide information on the robot's actual position and velocity, which may be used by the motion control unit to adjust the trajectory and ensure that the robot reaches the desired end pose accurately and efficiently. In the context of the invention, the generation of the motion command can be accomplished through various methods. The motion command in the context of the invention may be generated either internally by the autonomous charging device (ACD) or externally. Preferably, motion commands may be generated by the ACD control system and executed by the motion control unit. In some cases, the ACD itself may be configured to generate the motion command based on its internal control system or through an algorithm. In some cases, the motion command may be manually provided to the ACD, wherein an operator may provide the necessary instructions such as coordinates, speed, acceleration, waypoints, and other parameters using an interface or control panel to provide such instruction. In some cases, external generation of the motion command may involve a central command center or a remote control system providing remote instructions to the ACD which may be further processed by the ACD control system and / or executed by the motion control unit. In some cases, the motion command is generated using a scripting or programming language. In this scenario, a set of commands is written or generated to specify the desired movements of the manipulator. Motion commands may be based on mathematical algorithms, pre-defined patterns, or complex motion sequences. In some cases, the motion command may be generated by an AI-based algorithm or a planning module that takes into account various factors such as the environment, charging requirements, obstacle avoidance, and optimization objectives. The method in accordance with the invention comprises obtaining a compensation function covering at least a part of a workspace of the manipulator, wherein the compensation function utilizes a relationship between at least one motion command and a corresponding actual pose, and operating the manipulator based on the obtained compensation function such that the resulting actual pose minimally deviates from the target pose. In the context of the present invention, a compensation function may be a mathematical relation, algorithm or model that is used to adjust the position or trajectory of the ACD manipulator to compensate for various sources of error or deviation from the desired path or position. A compensation function may take many forms, but it is typically designed to account for factors such as joint and link flexure, thermal expansion, and variations in the ACD environment. By modelling these factors and operating the manipulator based on the obtained compensation function, the compensation function may improve the accuracy and precision of the ACD motion. In more detail, a compensation function refers to the adjustment or correction applied, for example by the motion control unit, to the motion commands of the manipulator in order to minimize deviations between the target poses and actual poses of a moving part of the autonomous charging device (ACD). The compensation function incorporates a relationship between the motion commands and the corresponding actual poses. This relationship is established by capturing the behavior and characteristics of the manipulator throughout at least a part of the manipulator’s workspace. By utilizing the compensation function, the manipulator operates in a manner that minimizes the deviation between the pose actually achieved (the actual pose) and the target pose during the ACD process. The method of the invention comprises obtaining, calculating, deriving, establishing, or otherwise determining such relationship between at least one motion command and the computed actual poses of the moving part of the autonomous charging device (ACD) manipulator. Said relationship is preferably represented as a function, such as a template function which relates the at least one motion command to the computed actual pose. The relationship between at least one motion command and a corresponding actual pose is obtained by: - having an image acquisition device attached to a moving part of the manipulator, the device disposed to acquire an image containing a visible fiducial marker placed at a referential pose; - instructing the manipulator to move using at least one motion command and acquiring an image of the fiducial marker; - using a computer-vision unit and the image for determining the relative pose of the fiducial marker with respect to the image acquisition device; - computing the actual pose of the moving part of the manipulator using the referential pose of the fiducial marker and the determined relative pose of the fiducial marker with respect to the image acquisition device; and - fitting a template function to that relates the at least one motion command and to the computed actual pose. In some cases, the image acquisition device is a 2D camera which may be configured to captures images with a wide field of view, allowing for comprehensive scene analysis and accurate fiducial marker detection. In some cases, the image acquisition device may include a depth sensor, which enables a 3D pose estimation of the fiducial marker. The term referential pose at which the fiducial marker is placed may refer to a referential pose defined in an absolute coordinate system whereby the referential pose represents the position and orientation of the fiducial marker with respect to an absolute coordinate system fixed to the base of the moving part and wherein the fiducial marker's pose is expressed using fixed XYZ coordinates and Euler angles or quaternion representations. In some embodiments, the referential pose is defined with respect to a base frame of the manipulator or ACD. In some embodiments, the referential pose represents the position and orientation of the fiducial marker with respect to a tool frame attached to the manipulator. In some embodiments, the referential pose is defined and specified by the user or operator based on their desired reference point. In some cases, the referential pose may be a substantially static referential pose, wherein the pose of the fiducial marker remains substantially fixed or substantially constant throughout the process of establishing the relationship between motion commands and actual poses. Provided that the pose of the fiducial marker remains substantially static, such referential pose may be a pose which is not known beforehand or which may be uncertain. Preferably, the fiducial marker does not move with respect to the non-moving parts of the manipulator while recording the image. In some cases, the referential pose is not substantially fixed or substantially constant throughout the method of establishing the relationship. Instead, it may change or vary over time or in response to specific conditions. In this case, the referential pose is preferably a known pose, especially the variation of the pose throughout the method is known and taken into account when computing the actual pose of the moving part of the manipulator. Such prior knowledge may be obtained through calibration, mapping, or other techniques to define the initial reference frame for the pose estimation purposes. The referential pose may be arbitrary or chosen based on convenience or specific requirements of the ACD. This means that the position and orientation of the fiducial marker, as well as its relationship to the image acquisition device, may be set to any desired values, without strict adherence to predefined coordinate systems or reference frames. Fiducial marker is preferably placed such that is, and / or remains visible throughout the portion of the workspace to which the compensation function applies, and such that the computer-vision unit can estimate its pose with sufficient accuracy. The method comprises instructing the manipulator to move using at least one motion command and acquiring an image of the fiducial marker. Instructing the manipulator to move using the at least one motion command and acquiring an image of the fiducial marker may include any or more of the following steps, in any order: instructing the manipulator to move, instructing the image acquisition device to acquire an image, allowing the manipulator to move and acquiring an image of the fiducial marker after allowing the manipulator to move. Instructing the manipulator to move using at least one motion command and acquiring an image of the fiducial marker may be an instruction generated by the ACD control system, the ACD motion control unit or a combination thereof. In some cases, the image containing the fiducial marker is acquired once the manipulator has moved based on the motion command. In some cases, the image containing the fiducial marker is acquired while the manipulator is in motion. The image acquisition process may occur concurrently with the movement of the manipulator, allowing for real-time feedback of the fiducial marker's pose. Alternatively, the image of the fiducial marker is acquired immediately after the manipulator has completed its motion. Once the manipulator has reached the desired position or pose, it may pause momentarily to acquire the image of the fiducial marker. This approach allows for a stable and static image, facilitating accurate pose estimation. In yet another embodiment, the acquisition of the image containing the fiducial marker is performed throughout the entire motion of the manipulator. The image acquisition device may capture the fiducial marker's position and pose at regular intervals during the manipulator's movement. A continuous image acquisition may provide a comprehensive dataset for pose estimation and may enhance the accuracy of the relationship established between the motion command and the computed actual pose. The method comprises using a computer-vision unit and the image for determining the relative pose of the fiducial marker with respect to the image acquisition device. In some cases, the computer-vision unit may utilize a deep-learning-based approach for pose estimation whereby a convolutional neural network (CNN) is trained on a large dataset of fiducial marker images and corresponding ground truth poses. In this case, the CNN takes the acquired image as input and directly predicts the relative pose of the fiducial marker with respect to the image acquisition device. The method comprises computing the actual pose of the moving part of the manipulator using the referential pose of the fiducial marker and the determined relative pose of the fiducial marker with respect to the image acquisition device. The manipulator's kinematic model and calibration parameters may be utilized to calculate the transformation between the image acquisition device and the manipulator's end effector. By combining this transformation with the relative pose of the fiducial marker, the actual pose of the manipulator's end effector may be computed. The method further comprises fitting a template function that relates the at least one motion command to the computed actual pose. A template function may be selected from at least one of a parameterized function, including a linear function, a polynomial function, a matrix function, a piecewise function, a look-up table, or a heuristic algorithm. In some cases, the template function is a parameterized function, whereby the function can be expressed as an equation or algorithm that takes the motion commands as inputs and produces the predicted actual poses as outputs. The parameters of the function may be adjusted and optimized to accurately capture the relationship between the inputs (motion commands) and outputs (actual poses). Regression or optimization functions, like linear least squares, may be used to fit the function parameters to the data. In some cases, the method comprises establishing the relationship between the motion command and the computed actual pose through analytical modelling to mathematically model the behavior of the ACD in different scenarios. An analytical model might be used to account for the behavior of the end effector within a certain pose within the workspace. In some cases, the method further comprises obtaining a model that represents the relationship between the at least one motion commands and the computed actual pose, wherein the model is selected from the group comprising a Feedforward Neural Network (FNN), a Convolutional Neural Network (CNN), a Recurrent Neural Network (RNN) and a Graph Neural Network (GNN). In some cases, the method comprises establishing the relationship between the motion command and the computed actual pose through empirical testing to measure the robot's behavior in different scenarios such as developing the relationship under different environmental conditions, and using the resulting data in the compensation function that accounts for these variations. For example, an experimental set up may be built wherein the ACD is tasked with completing a plug- in process under low temperature conditions which are anticipated to affect the pose estimation while measuring the actual pose of the manipulator in relation to the target posse. By varying the temperature under which the ACD operates and measuring the resulting deviation from the desired position, a dataset that relates motion commands and actual poses may be obtained and subsequently used to develop a compensation function. A regression model may be built to fit the dataset and identify the relationship between temperature conditions and the resulting deviation from the target position. Preferably, a linear regression may be used to model the relationship between temperature conditions and pose deviation, or a more complex model such as a polynomial regression to capture more complex relationships. Preferably, the method comprises establishing the relationship between a plurality of motion commands and their computed actual poses. Preferably, the plurality of motion commands encompasses a substantial portion of the workspace of the manipulator, covering a range of positions and orientations that is sufficient to enable an effective operation of the ACD. In some cases, the method may further comprise using an existing function of the workspace comprising representations of major features and existing data relationships between motion commands and actual poses for a plurality of motion commands. An existing function may serve as an initial reference for establishing a relationship between at least one motion command and the computed actual pose in other poses or portions of the workspace. The method in accordance with the invention comprises operating the manipulator based on the obtained compensation function such that the resulting actual pose minimally deviates from the target pose, wherein the compensation function utilizes the obtained relationship between at least one motion command and a corresponding actual pose. The compensation function serves as a mathematical model or representation of the relationship between motion commands and poses, enabling the manipulator to accurately estimate and adjust its poses. A compensation function may utilize a lookup table representing said relationship to determine the motion command to be given to a target pose. When the ACD is in operation, the lookup table may be used to adjust the robot's trajectory in real-time based on the observed deviation between a desired pose and an actual pose of the ACD manipulator. The compensation function may use the lookup table to determine the appropriate adjustment to the motion command to compensate for this deviation based on the representation of the relationship between motion commands and poses. For example, if a specific motion command with a target pose yields a computed actual pose, this relationship is recorded in the lookup table. During operation, the lookup table can be used to adjust the robot motion command 's trajectory in real-time based on the observed deviation between a desired pose and an actual pose of the ACD manipulator. The compensation function, utilizing the lookup table, may thus determine the appropriate adjustment to the motion command to compensate for this deviation. By applying the compensation function, the motion command may be dynamically adjusted, ensuring that the resulting actual pose aligns with the desired or target pose, improving the accuracy and performance of the ACD manipulator. In general, the compensation function allows for bridging the differences between a theoretical system and its practical implementation, enabling accurate estimation and control of the manipulator’s pose. Preferably, the method comprises updating the compensation function based on data acquired during operation of the ACD. A compensation function may be modelled so that it accurately represents the behavior of the ACD in various conditions and allows adjusting the robot's trajectory or position in real-time to compensate for any sources of error or deviation from the motion command and / or target pose. To determine and refine the compensation function, an optimization algorithm may be incorporated. This algorithm may facilitate in finding suitable parameter values that align the compensation function with the identified relationship. An optimization algorithm may iteratively adjust the parameters based on an optimization criterion, typically minimizing deviations between actual and target poses. The optimization process involves iteratively refining the parameter values to improve the fit of the function to the data points, which include motion commands and corresponding actual poses. The algorithm may adjust the parameters based on the gradient of the error function, directing it towards minimizing the error. The optimization algorithm may continue iterating until a convergence criterion is met, ensuring a desired level of accuracy or stability in parameter estimation. By utilizing an optimization algorithm, the compensation function may adapt and improve its accuracy over time. The optimization algorithm may fine tune parameters to align the predicted poses with the desired target poses, ensuring that the manipulator is operated such that minimal deviations between actual and target poses are obtained. A compensation function may be further developed through machine learning algorithms to learn from the ACD’s behavior in different scenarios and develop a compensation function based on this data. In some embodiments, a machine learning algorithm is trained on data from ACD sensors to predict the effect of different environmental conditions on the robot's behavior, and use this information to adjust the robot's movements in real-time. In such case, a neural network may be utilized to learn the relationship between a sensor data, such a camera mounted on the ACD manipulator and the desired position of the manipulator. The neural network may be trained on a large dataset of sensor readings and corresponding end effector poses, using techniques such as backpropagation to adjust the weights and biases of the network to minimize the error between the predicted and actual end effector positions. Once the neural network is trained, it can be used in real-time to predict the appropriate compensation to apply to the ACD’s trajectory based on the current sensor data. In the context of the invention, an interpolation procedure may be used to estimate values between data points in a lookup table, the data points correlating a motion command and a corresponding computed actual pose. The computed actual pose preferably includes translation and / or rotation values for each motion command. One common interpolation method is linear interpolation, which assumes a linear relationship between the data points. To apply linear interpolation to a lookup table for translation and / or rotation, the following steps may be followed: Sort the lookup table in ascending order of translation and rotation values. Given an input translation and rotation value, find the two closest data points in the lookup table with translation and rotation values that bracket the input values. Calculate the weights for the two data points based on their distance from the input values. The weight for the closer data point will be higher than the weight for the farther data point. Interpolate the translation and rotation values by combining the two data points using their weights. For example, we could use a weighted average of the translation and / or rotation values. In the context of the invention, the term workspace of a robot manipulator refers to the region in space that the robot arm can reach and operate within. It can be defined as the volume of space that can be accessed by the moving part of the robot manipulator while the robot remains fixed to its base. In some cases, the method comprises dynamically assessing the deviation between the resulting actual pose and the target pose during operation of the manipulator, and adjusting at least one boundary of the workspace if the deviation exceeds a predetermined threshold. Preferably, the adjusting of the at least one boundary of the workspace includes adjusting the motion limits of the manipulator to a narrower range so that that the resulting actual pose minimally deviates from the target pose. If the deviation between the resulting actual pose and the target pose during operation of the manipulator exceeds a predetermined threshold, the method further includes dynamically reducing the boundaries of the workspace. This reduction may be performed to ensure that the deviation falls within the acceptable threshold, thereby maintaining the desired performance and operational limits of the robotic arm. The reduction of the workspace boundaries is carried out by modifying the limits or constraints on the arm's range of motion. This can involve restricting the maximum extension, rotation, or other parameters that define the allowable movements of the arm. By doing so, the system effectively narrows the workspace within which the arm operates, ensuring that assessed deviations stay within a predetermined threshold. In some cases, the method in accordance with the invention includes defining boundaries within the workspace of the manipulator for which a relationship shall be obtained and / or for which a compensation function is to be obtained. A compensation function may cover the entire workspace of the manipulator and in some cases the function may cover at least a part or portion thereof, which is preferably dependent on the obtained relationship. When the function covers a part or portion of the workspace, the method may include a step of defining the boundaries within the workspace. Preferably, the part of the workspace within the boundaries overlaps with the spatial volume in which the ACD system should fulfill its task. For example, if the a connector attached to the manipulator is taken as the moving part, the boundaries within the workspace of the connector for which the compensation function is obtained ideally overlaps with where the inlet of the vehicle may be found in operation. Defining the boundaries of the workspace includes at least one of: defining the range of motion of the manipulator, defining the maximum reach of the manipulator, and the defining orientation capabilities of the manipulator. In some cases, defining the boundaries of the workspace includes defining the maximum and minimum joint angles of each joint in the manipulator. In some cases, defining the boundaries of the workspace includes creating a grid of sample points within the workspace, wherein the grid has a sample density that allows all areas of the workspace to be covered, but sparse enough to keep the data collection manageable. In some cases, defining the boundaries of the workspace includes generating a map of the workspace whereby a representation of the range of positions and orientations that the manipulator can reach within its physical constraints are depicted. In some cases, the method further comprises optimizing the workspace to map and identify areas of potential improvement by adjusting the manipulator's design or configuration to improve its range of motion and optimize its performance within the workspace. The size and shape of the ACD workspace may be dependent on various factors, such as the ACD physical dimensions, the range of motion of its joints, and any constraints or obstacles in the environment. The workspace may be defined by its boundaries, which are typically determined by the maximum and minimum joint angles or positions of the robot arm. In some cases, the workspace is defined in relation to operational limits, wherein the boundaries of the workspace are determined by the maximum reach, extension, or movement capabilities of the robotic arm, taking into account its mechanical design and constraints. Alternatively, the workspace boundaries may be defined based on physical constraints, considering the dimensions and limitations of the environment in which the robotic arm operates. These physical constraints can include dimensions of the ACD or the presence of surrounding obstacles. In certain embodiments, the workspace boundaries may be defined based on task-specific requirements. This involves considering factors such as the vehicle type, ACD location or operational constraints specific to the charging process to be performed by the robotic arm. In some implementations, workspace boundaries may be established using real-time sensor feedback. Proximity sensors, cameras, or other sensing mechanisms may provide feedback on the presence of objects or obstacles, thereby influencing the allowable range of arm movement within the workspace. Software constraints may also contribute to the definition of the workspace. In some cases, algorithms and software modules may optimize the movable part of the manipulator movement by considering factors such as joint limits, collision avoidance, or motion smoothness, thereby determining the boundaries of the workspace. Moreover, the workspace may be defined using specific coordinate systems or reference frames relevant to the task at hand. Coordinate systems may include Cartesian coordinates, joint angles, or position vectors, enabling precise definition and control of the workspace boundaries. In some cases, when the relationship between the at least one motion command and the computed actual pose remains within the predetermined acceptable threshold, the method may include dynamically expanding the boundaries of the workspace. This expansion is carried out to benefit from the available range of motion, thereby broadening the operational capabilities of the robotic arm. Adjustment of the workspace boundaries based on the relationship between the at least one motion command and the computed actual pose may ensure that the motion of the robotic arm remains within predefined limits, optimizing its performance, safety, and efficiency. By analyzing the relationship between the motion command and the computed actual pose, the ACD can identify any deviations or discrepancies that may occur during motion of the moving part of the ACD manipulator. In the context of the invention, the fiducial marker may be a physical object or feature that is used as a reference point for aligning the robot's coordinate system with other coordinate systems or reference frames. Fiducial markers can take many forms, but they are typically designed to be easily detected and recognized by sensors or cameras mounted on the robot or elsewhere in the workspace. Examples of fiducial markers include reflective spheres, checkerboard patterns, and QR codes. In some cases, the method comprises using the vehicle socket as the fiducial marker. The robot's image acquisition devices are disposed to detect the fiduciary markers and use them as reference points to calculate the position and orientation of the robot's end effector and other components, preferably the moving part of the manipulator. This information is then used to generate the transformation matrices that relate the robot's coordinate system to other coordinate systems or reference frames. In some embodiments, the fiducial marker is designed and positioned in a way that allows for pose estimation with a certain level of variability or uncertainty. The pose estimation provided by the fiducial marker may range from the ground truth pose to a pose within a defined confidence interval. The confidence interval represents the range of poses within which the estimated pose of the fiducial marker is expected to fall with a certain level of confidence. The confidence interval accounts for various factors, such as measurement errors, noise, and uncertainties inherent in the pose estimation process. In some embodiments, the method comprises obtaining a comparison matrix generated by comparing the obtained functions representing the relationships between at least one motion command and a corresponding actual pose of different ACDs. In this case, multiple ACDs with similar functionalities and manipulators are considered wherein each ACD has its own function mapping the relationship between motion commands and corresponding actual poses. A comparison matrix provides for a template that captures the common patterns and trends in the identified relationships across the ACDs and may allow reducing the number of data points needed to establish the relationship between motion commands and actual poses. As such, instead of collecting a large amount of data for each ACD individually, the comparison matrix allows for the method for obtaining a function representing a relationship between at least one motion command and a corresponding actual pose of the moving part of an ACD manipulator to be populated with a smaller subset of representative data points. In some embodiments, the method comprises obtaining a compensation function whereby the compensation function may be suitably transferred to a plurality of ACD’s. In some cases, the obtaining of the compensation function includes a regularization step selected from weight decay and dropout, whereby the regularization step prevents overfitting of the mapping function to the sample data and allows the function to perform better on new inputs. In some cases, the obtaining of the compensation function includes the use of a dataset of motion commands which is preferably representative of the range of inputs and outputs it is expected to encounter during operation in order to allow for the function to generalize better and improve its ability to predict new, unseen inputs. In some cases, the obtaining of the compensation function includes a transfer learning step whereby the function is a model which can be trained on one set of motion commands and then using it as a starting point for motion commands, whereby the model can leverage the knowledge it has acquired from the source command to improve performance on the target command. In some cases, the obtaining of the compensation function includes a model using a domain adaptation techniques whereby the model is deployed in a different environment than where it was trained. In some cases, the obtaining of the compensation function includes combining multiple models to develop a new compensation function whereby the robustness and generalization ability of the compensation function is increased by reducing the risk of relying on a single model that may have limited transferability. The method in accordance with the invention allows for obtaining the relationship between at least one motion command and a corresponding actual pose in a time efficient manner. In some cases, the method includes a data pre-processing step that allows reducing the amount of data the function needs to process. In some cases, the method includes a parallel processing using multiple processors to perform computations simultaneously so that the workload is distributed across multiple processors and reduce the overall computation time. In some cases, the method includes a linearization step that allows reducing the number of calculations needed to generate a computation. In some cases, the method a model compression step allowing reducing the size of the data points without significantly impacting its performance, wherein the model compression step includes one or more techniques selected from pruning, quantization, and distillation, whereby a smaller model size can improve the method by reducing the number of computations needed to generate a relationship. In one embodiment of the invention, a Gauss-Newton method is employed to iteratively estimate the relationship between the motion command and the computed actual pose. The Gauss- Newton method may be utilized to iteratively determine the relationship between the motion command and the computed actual pose with a high level of confidence, while minimizing the number of iterations required for each pose or workspace. In some cases, the method may initiate with an initial prediction for the relationship parameters, which is iteratively refined based on a Jacobian matrix and weighted least squares optimization. The initial guess can be based on prior knowledge, historical data, or an approximation derived from ACD specifications. By minimizing the error between the motion command and the computed actual pose, the method efficiently converges towards an accurate estimation of the relationship within a reduced number of iterations. In some instances, one or more components may be referred to herein as “configured to,” “configured by,” “configurable to,” “operable / operative to,” “adapted / adaptable,” “able to,” “conformable / conformed to,” etc. Those skilled in the art will recognize that such terms (for example “configured to”) generally encompass active-state components and / or inactive-state components and / or standby-state components, unless context requires otherwise. Conditional language used herein, such as, among others, “can”, “could”, “might”, “may”, “e.g.” and the like, unless specifically stated otherwise, or otherwise understood within the context as used, is generally intended to convey that certain embodiments include, while other embodiments do not include, certain features, elements and / or steps. Thus, such conditional language is not generally intended to imply that features, elements and / or steps are in any way required for one or more embodiments or that one or more embodiments necessarily include logic for deciding, with or without author input or prompting, whether these features, elements and / or steps are included or are to be performed in any particular embodiment. The terms “comprising”, “including”, “having” and the like, are synonymous and are used inclusively, in an open-ended fashion, and do not exclude additional elements, features, acts, operations, and so forth. Also, the term “or” is used in its inclusive sense (and not in its exclusive sense) so that when used, for example, to connect a list of elements, the term “or” means one, some, or all of the elements in the list. In addition, the articles “a,” “an,” and “the” as used in this application and the appended claims are to be construed to mean “one or more” or “at least one” unless specified otherwise. As used herein, a phrase referring to “at least one of” or “and / or” a list of items refers to any combination of those items, including single members. Similarly, while method steps may be depicted in the drawings in a particular order, it is to be recognized that such method steps need not be performed in the particular order shown or in sequential order, or that all illustrated operations be performed, to achieve desirable results. Further, the drawings may schematically depict one more example processes in the form of a flowchart. However, other operations that are not depicted can be incorporated in the example methods and processes that are schematically illustrated. For example, one or more additional operations can be performed before, after, simultaneously, or between any of the illustrated operations. Additionally, the operations may be rearranged or reordered in other implementations. In certain circumstances, multitasking and parallel processing may be advantageous. It will be appreciated that the detailed description set forth above is merely illustrative in nature and variations that do not depart from the gist and / or spirit of the claimed subject matter are intended to be within the scope of the claims. Such variations are not to be regarded as a departure from the spirit and scope of the claimed subject matter.

Claims

CLAIMS 1. A method for minimizing deviations between a target pose and an actual pose of a moving part of an autonomous charging device (ACD) manipulator, the manipulator adapted to connect a charging connector to an electric vehicle socket, comprising: a. obtaining a compensation function covering at least a part of a workspace of the manipulator, wherein the compensation function utilizes a relationship between at least one motion command and a corresponding actual pose, and b. operating the manipulator based on the obtained compensation function such that the resulting actual pose minimally deviates from the target pose, wherein the relationship between at least one motion command and a corresponding actual pose is obtained by a method comprising at least the following steps: - having an image acquisition device attached to a moving part of the manipulator, the device disposed to acquire an image containing a visible fiducial marker placed at a referential pose; - instructing the manipulator to move using at least one motion command and acquiring an image of the fiducial marker; - using a computer-vision unit and the image for determining the relative pose of the fiducial marker with respect to the image acquisition device; - computing the actual pose of the moving part of the manipulator using the referential pose of the fiducial marker and the determined relative pose of the fiducial marker with respect to the image acquisition device; and - fitting a template function that relates the at least one motion command to the computed actual pose.

2. The method according to claim 1, wherein the template function is selected from at least one of a parameterized function, including a linear function, a polynomial function, a matrix function, a piecewise function, a look-up table, or a heuristic algorithm 3. The method according to any one of claims 1 or 2, wherein the method comprises obtaining a model that represents the relationship between the at least one motion command and the computed actual pose, wherein the model is selected from the group comprising a Feedforward Neural Network (FNN), a Convolutional Neural Network (CNN), a Recurrent Neural Network (RNN) and a Graph Neural Network (GNN).

264. The method according to any one of the preceding claims wherein the vehicle socket is used as the fiducial marker.

5. The method according to any one of the preceding claims wherein the method comprises establishing the relationship between a plurality of motion commands and their corresponding computed actual poses 6. The method according to any one of the preceding claims wherein the plurality of motion commands encompasses a substantial portion of the workspace of the manipulator, covering a range of positions and orientations that is sufficient to enable an effective operation of the ACD.

7. The method according to any one of the preceding claims wherein the method comprises using an existing function of the workspace comprising representations of major features and existing data relationships between motion commands and actual poses for a plurality of motion commands.

8. The method according to any one of the preceding claims wherein the compensation function comprises a lookup table representing the relationship between at least one motion command and a corresponding actual pose to determine a motion command to be given to a target pose.

9. The method according to any one of the preceding claims wherein the method comprises updating the compensation function based on data acquired during operation of the ACD.

10. The method according to claim 8 wherein the compensation function comprises an optimization algorithm to refine and optimize the parameter values of the lookup table, minimizing deviations between actual and target poses.

11. The method according to claim 10 wherein the optimization algorithm comprises an interpolation procedure to estimate values between data points in the lookup table, wherein data points include at least one of translation and rotation values for each motion command.

12. The method according to any one of the preceding claims further comprises dynamically assessing the deviation between the resulting actual pose and the target pose during operation 27of the manipulator, and adjusting at least one boundary of the workspace if the deviation exceeds a predetermined threshold.

13. The method according to claim12 wherein the adjusting of the at least one boundary of the workspace includes adjusting the motion limits of the manipulator to a narrower range so that that the resulting actual pose minimally deviates from the target pose 14. The method according to any one of the preceding claims wherein the motion command includes at least one of a predefined waypoint and a set of coordinates, and wherein the predefined waypoints for a plurality of motion commands is substantially the same.

15. The method according to any one of the preceding claims wherein the motion command comprises a sequence of waypoints that serve as intermediate positions for the moving part of the manipulator and for the image acquisition device to record subsequent images of the fiducial marker.

16. The method according to any one of the preceding claims wherein the referential pose is determined by acquiring an image of the fiducial marker when the manipulator is in a state where the difference between an actual pose and target pose are minimal, determining the pose of the fiducial marker with respect to the camera, and calculating the absolute pose of the fiducial marker.

17. The method according to any one of the preceding claims wherein when the referential pose is a substantially static pose, the referential pose is unknown.

18. The method according to any one of the preceding claims wherein when the referential pose is a substantially non-static pose, the referential pose is a known pose.

19. The method according to any one of the preceding claims wherein the referential pose is known with a confidence interval.

20. The method according to any one of the preceding claims wherein the method comprises utilizing a plurality of fiducial markers, each placed at different poses. 2821. The method according to any one of the preceding claims wherein the manipulator is operated based on the obtained compensation function by combining the compensation function and the predefined waypoints to compensate for the deviations in each of the plurality of working poses.

22. The method according to any one of the preceding claims wherein the method comprises using a socket having a fiducial marker to validate the compensation function, wherein the manipulator is instructed to manipulate the socket to a target pose, and the actual pose of the socket is compared to the predicted pose based on the compensation function.

23. An autonomous charging device (ACD) system comprising; ^ A manipulator adapted to connect a charging connector to an electric vehicle socket ^ An image acquisition device attached to a moving part of the manipulator ^ A computer vision module ^ A motion control unit, wherein the motion control unit device is configured to carry out the following actions: ^ obtaining a compensation function covering at least a part of a workspace of the manipulator, wherein the compensation function utilizes a relationship between at least one motion command and a corresponding actual pose, and ^ operating the manipulator based on the obtained compensation function such that the resulting actual pose minimally deviates from the target pose, wherein the relationship between at least one motion command and a corresponding actual pose is obtained by a method comprising at least the following steps: ^ having an image acquisition device attached to a moving part of the manipulator, the device disposed to acquire an image containing a visible fiducial marker placed at a referential pose; ^ instructing the manipulator to move using at least one motion command and acquiring an image of the fiducial marker; ^ using a computer-vision unit and the image for determining the relative pose of the fiducial marker with respect to the image acquisition device; ^ computing the actual pose of the moving part of the manipulator using the referential pose of the fiducial marker and the determined relative pose of the fiducial marker with respect to the image acquisition device; and 29^ fitting a template function to that relates the at least one motion command to the computed actual pose.

24. A method for obtaining a function representing a relationship between at least one motion command and a corresponding actual pose of the moving part of an ACD manipulator, the method comprising: a) having an image acquisition device attached to the moving part of the manipulator, the device disposed to acquire an image containing a visible fiducial marker placed at a referential pose; b) instructing the manipulator to move using at least one motion command and acquiring an image of the fiducial marker; c) using a computer-vision unit and the image for determining the relative pose of the fiducial marker with respect to the image acquisition device; d) computing the actual pose of the moving part of the manipulator using the referential pose of the fiducial marker and the determined relative pose of the fiducial marker with respect to the image acquisition device; and e) fitting a template function that relates the at least one motion command to the computed actual pose. 30