Patent Description:
Robots and in particular robotic arms are widely used to perform a wide variety of automated tasks. Recently lightweight robots have increased in popularity for assisting human activities, e.g. in production facilities. These robots are commonly known as collaborative robots or cobots.

For robots, such as robotic arms, it is important to know the position of movable parts, as well as to ensure that the robot behaves, e.g. moves, as intended. Furthermore, it is of great importance, especially when automated and/or autonomous robots are used for assisting human activities and working alongside humans, that the robots comprise certain safety features and redundant systems to ensure the safety of the humans around.

Furthermore, there is a desire towards making robotic arms as compact as possible. Documents <CIT>, <CIT>, <CIT> disclose other interesting joint assemblies with processing units.

It is an object of the present disclosure to at least provide improvements of the prior art and/or to solve or reduce problems known from the prior art. further object of the present disclosure to provide an advantageous or at least alternative robotic joint assembly and a robotic joint with a robotic joint assembly.

Thus, the present disclosure relates to a joint assembly for a robot and a robot comprising at least one such joint assembly.

Accordingly, a joint assembly for a robot is disclosed. The joint assembly comprises: a joint housing, a first motor, a second motor, and circuitry, such as a PCB and/or one or more PCBs. Also, a robot comprising the joint assembly, e.g. as a first joint assembly, is disclosed.

The robot and/or the joint assembly may comprise a first link and/or a second link. The first motor is connecting the joint housing with a first link and the first motor is adapted to rotate the first link relative to the joint housing around a first axis. The second motor is connecting the joint housing with a second link and the second motor is adapted to rotate the second link relative to the joint housing around a second axis. The second axis is non-parallel with the first axis. The circuitry is accommodated in the joint housing and comprises a first processing unit and a second processing unit. The first processing unit is adapted to control the first motor and the second processing unit is adapted to control the second motor.

The robot and/or the joint assembly may comprise a plurality of sensors, e.g. including a first primary sensor and a first secondary sensor. The first processing unit receives, e.g. from the first primary sensor and/or from the first secondary sensor, a first primary sensor signal indicative of a first motion characteristic of the first link relative to the joint housing. The first processing unit calculates the first motion characteristic of the first link relative to the joint housing at least based on the first primary sensor signal. The second processing unit receives, e.g. from the first primary sensor and/or from the first secondary sensor, a first secondary sensor signal indicative of the first motion characteristic of the first link relative to the joint housing. The second processing unit calculates the first motion characteristic of the first link relative to the joint housing at least based on the first secondary sensor signal.

The plurality of sensors, such as the first primary sensor and/or the first secondary sensor, may be sensing one or more parameters indicative of a motion characteristic of a corresponding link. In the present disclosure, "motion characteristic" may include movement and/or position and/or torque.

In some examples, the first primary sensor signal and the first secondary sensor signal may be received from the same sensor, such as the first primary sensor and/or the first secondary sensor. However, in other examples the first primary sensor signal may be received from the first primary sensor and the first secondary sensor signal may be received from the first secondary sensor, wherein the first primary sensor and the first secondary sensor are different sensors, e.g. of the same type or different types. In some examples the first primary sensor and/or the first secondary sensor may comprise a plurality of sub-sensors, e.g. the first primary sensor may comprise a plurality of current sensors, such as a plurality of current sensors respectively sensing current in a plurality of phases. Hence, the first primary sensor signal and/or the first secondary sensor signal may comprise a plurality of sub-signals from a plurality of sub-sensors. In some examples, the first primary sensor has one or more sub-sensors in common with the first secondary sensor. In some examples, the first primary sensor has less than all sub-sensors in common with the first secondary sensor.

Hence, by the present disclosure, a joint assembly and a robot is provided, which reduces the need for circuitry in a joint. For example, one PCB may comprise the two processing units and be capable of controlling two motors. Thereby, the circuitry necessary to realise the robot may be reduced.

Furthermore, the present disclosure also proposes a further optimization in that the two processors being adapted to control the two motors of the joint assembly, are also configured to independently perform redundant calculations of motion characteristic(s) of the joint assembly. Hence, it is an advantage of the present disclosure that processing units each perform multiple functions, and thereby the present disclosure reduces the number of processing units needed, i.e. the present disclosure provides an optimized architecture requiring less components. Thereby, providing for simpler and less expensive robots.

The robot may comprise one or more further rotatable joints. For example, the robot may comprise a plurality of joint assemblies, such as the disclosed joint assembly. Thus, the robot may comprise a first joint assembly and optionally a second joint assembly, a third joint assembly and/or a fourth joint assembly. Each or any of the first, second, third and/or fourth joint assembly may be like the disclosed joint assembly. Similarly, any specification in the following in relation to a joint assembly of the robot, such as the first, second, and/or third joint assembly may apply to the above disclosed joint assembly.

The first joint assembly may comprise a first joint housing, a first motor, a second motor, and first circuitry, such as a first PCB and/or one or more first PCBs. The second joint assembly may comprise a second joint housing, a third motor, a fourth motor, and second circuitry, such as a second PCB and/or one or more second PCBs. The third joint assembly may comprise a third joint housing, a fifth motor, a sixth motor, and third circuitry, such as a third PCB and/or one or more third PCBs. The fourth joint assembly may comprise a fourth joint housing, a seventh motor, and fourth circuitry, such as a fourth PCB and/or one or more fourth PCBs. The fourth joint assembly may comprise a tool interface.

A motor may be causing relative rotation around a respective axis. The plurality of motors, e.g. the first motor, the second motor, the third motor, the fourth motor, the fifth motor, the sixth motor and/or the seventh motor, may cause relative rotation around a plurality of respective axes. The plurality of motors may be at least <NUM> motors, such as at least <NUM> motors, such as at least <NUM> motors, such as at least <NUM> motors. The plurality of axes may correspondingly be at least <NUM> axes, such as at least <NUM> axes, such as at least <NUM> axes, such as at least <NUM> axes. The robot may be configured such that in at least some configurations the plurality of axes are non-parallel.

The motors may each comprise a control interface, e.g. comprising one or more control terminals. The first motor may comprise a first control interface. The second motor may comprise a second control interface. The third motor may comprise a third control interface. The fourth motor may comprise a fourth control interface. The fifth motor may comprise a fifth control interface. The sixth motor may comprise a sixth control interface. The seventh motor may comprise a seventh control interface. The motors of a joint assembly may be oriented such that their control interfaces are facing towards each other and/or such that their control interfaces are facing the interior of the joint housing. For example, the first control interface may be facing towards the second control interface and/or the first control interface may be facing the interior of the first joint housing, and wherein the second control interface is facing the interior of the first joint housing. Such orientation of the motors of the joint assembly makes it easier for connecting the motors to processing units, e.g. on a single PCB, between the motors, such as within the joint housing.

The motor(s), such as the first motor, the second motor, the third motor, the fourth motor, the fifth motor, the sixth motor, and/or the seventh motor, may comprise a gear assembly, e.g. an integral gear, such as a strain wave gear. Hence, a motor in the present disclosure may be a gear motor.

The robot may comprise a plurality of links, e.g. including a first link and a second link. The plurality of links may comprise a third link and/or a fourth link. The links may extend between the joint assemblies. For example, the first link may extend between a base of the robot and the first joint assembly. The second link may extend between the first joint assembly and the second joint assembly. The third link may extend between the second joint assembly and the third joint assembly. The fourth link may extend between the third joint assembly and the fourth joint assembly.

The first motor may be connecting the first joint housing with the first link. The first motor may be adapted to rotate the first link relative to the first joint housing around a first axis. The second motor may be connecting the first joint housing with the second link. The second motor may be adapted to rotate the second link relative to the first joint housing around a second axis. The second axis may be non-parallel with the first axis. The first circuitry may be accommodated in the first joint housing. The first circuitry may comprise a first processing unit and a second processing unit. The first processing unit may be adapted to control the first motor. The second processing unit may be adapted to control the second motor.

The further joint assemblies of the robot, such as the second joint assembly, the third joint assembly and/or the fourth joint assembly, may be similarly configured, i.e. having one motor to rotate one link relative to the joint housing around one axis, and another motor to rotate another link relative to the joint housing around another axis, and having circuitry, e.g. a single PCB, accommodated in the joint housing with two processing units being adapted to respectively control the two motors of the joint assembly. For example, the third motor may be connecting the second joint housing with the second link. The third motor may be adapted to rotate the second link relative to the second joint housing around a third axis. The fourth motor may be connecting the second joint housing with the third link. The fourth motor may be adapted to rotate the third link relative to the second joint housing around a fourth axis. The fourth axis may be non-parallel with the third axis. The second circuitry may be accommodated in the second joint housing. The second circuitry may comprise a third processing unit and a fourth processing unit. The third processing unit may be adapted to control the third motor. The fourth processing unit may be adapted to control the fourth motor.

One joint assembly, e.g. the most distant joint assembly, such as the fourth joint assembly, may comprise circuitry, e.g. a PCB, with a processing unit adapted to control the tool interface. For example, the fourth circuitry may comprise an eighth processing unit, e.g. in addition to a seventh processing unit. The eighth processing unit may be adapted to control the tool interface. The fourth circuitry may be accommodated in the fourth joint housing.

The robot and/or each or any of the one or more joint assemblies may comprise a plurality of sensors. The plurality of sensors may comprise a plurality of sensors for each motor and/or link attached to the respective motor. The sensors may comprise output position sensors obtaining angular position of a link relative to the joint housing. The sensors may comprise rotor position sensors obtaining angular position of a rotor of a motor. The sensors may comprise current sensors measuring current drawn by a motor. The sensors may comprise torque sensors obtaining torque provided by a motor. One or more of the sensors may comprise a plurality of sub-sensors, e.g. a plurality of current sensors, such as a plurality of current sensors respectively sensing current in a plurality of phases.

The robot and/or each or any of the one or more joint assemblies, such as the first joint assembly, may comprise a plurality of first sensors, e.g. including a first primary sensor and a first secondary sensor, adapted for sensing one or more parameters indicative of a first motion characteristic, such as movement and/or position and/or torque, of the first motor and/or the link attached to the first motor, i.e. the first link, relative to the first joint housing. The first primary sensor may be a first primary output position sensor obtaining angular position of the first link relative to the first joint housing. The first primary sensor may be a first primary rotor position sensor obtaining angular position of a rotor of the first motor. The first primary sensor may be a first primary current sensor and/or a plurality of first primary current sensors measuring current drawn by the first motor. The first primary sensor may be a first primary torque sensor obtaining the torque provided by the first motor. The first secondary sensor may be a first secondary output position sensor obtaining angular position of the first link relative to the first joint housing. The first secondary sensor may be a first secondary rotor position sensor obtaining angular position of a rotor of the first motor. The first secondary sensor may be a first secondary current sensor and/or a plurality of first secondary current sensors measuring current drawn by the first motor. The first secondary sensor may be a first secondary torque sensor obtaining the torque provided by the first motor.

The robot and/or each or any of the one or more joint assemblies, such as the first joint assembly, may comprise a plurality of second sensors, e.g. including a second primary sensor and a second secondary sensor and optionally one or more further second sensors, adapted for sensing one or more parameters indicative of a second motion characteristic, such as movement and/or position and/or torque, of the second motor and/or the link attached to the second motor, i.e. the second link, relative to the first joint housing. The second primary sensor may be a second primary output position sensor obtaining angular position of the second link relative to the first joint housing. The second primary sensor may be a second primary rotor position sensor obtaining angular position of a rotor of the second motor. The second primary sensor may be a second primary current sensor and/or a plurality of second primary current sensors measuring current drawn by the second motor. The second primary sensor may be a second primary torque sensor obtaining the torque provided by the second motor. The second secondary sensor may be a second secondary output position sensor obtaining angular position of the second link relative to the first joint housing. The second secondary sensor may be a second secondary rotor position sensor obtaining angular position of a rotor of the second motor. The second secondary sensor may be a second secondary current sensor and/or a plurality of second secondary current sensors measuring current drawn by the second motor. The second secondary sensor may be a second secondary torque sensor obtaining the torque provided by the second motor.

Similarly, the robot and/or each or any of the one or more joint assemblies may comprise a plurality of third, fourth, fifth, sixth and/or seventh sensors, e.g. including third, fourth, fifth, sixth and/or seventh primary sensors and third, fourth, fifth, sixth and/or seventh secondary sensors and optionally one or more further third, fourth, fifth, sixth and/or seventh sensors, adapted for sensing one or more parameters indicative of respective third, fourth, fifth, sixth and/or seventh motion characteristics, such as movement and/or position and/or torque, of the respective third, fourth, fifth, sixth and/or seventh motor and/or the link attached to that motor relative to the joint housing of the respective joint assembly. The third, fourth, fifth, sixth and/or seventh primary sensors may be third, fourth, fifth, sixth and/or seventh primary output position sensors obtaining angular position of the attached link relative to the joint housing of the respective joint assembly. The third, fourth, fifth, sixth and/or seventh primary sensors may be third, fourth, fifth, sixth and/or seventh primary rotor position sensors obtaining angular position of a rotor of the respective third, fourth, fifth, sixth and/or seventh motor. The third, fourth, fifth, sixth and/or seventh primary sensors may be third, fourth, fifth, sixth and/or seventh primary current sensors measuring current drawn by the respective third, fourth, fifth, sixth and/or seventh motor. The third, fourth, fifth, sixth and/or seventh primary sensors may be third, fourth, fifth, sixth and/or seventh primary torque sensors obtaining the torque provided by the respective third, fourth, fifth, sixth and/or seventh motor. The third, fourth, fifth, sixth and/or seventh secondary sensors may be third, fourth, fifth, sixth and/or seventh secondary output position sensors obtaining angular position of the attached link relative to the joint housing of the respective joint assembly. The third, fourth, fifth, sixth and/or seventh secondary sensors may be third, fourth, fifth, sixth and/or seventh secondary rotor position sensors obtaining angular position of a rotor of the respective third, fourth, fifth, sixth and/or seventh motor. The third, fourth, fifth, sixth and/or seventh secondary sensors may be third, fourth, fifth, sixth and/or seventh secondary current sensors measuring current drawn by the respective third, fourth, fifth, sixth and/or seventh motor. The third, fourth, fifth, sixth and/or seventh secondary sensors may be third, fourth, fifth, sixth and/or seventh secondary torque sensors obtaining the torque provided by the respective third, fourth, fifth, sixth and/or seventh motor.

In some examples, one or more of the sensors may form part of the respective circuitry of the joint assembly. For example, the circuitry of the joint assembly may comprise one or more of the sensors. For example, the one more sensors may be provided as components on a PCB, which may be the same PCB also comprising one or more of the processing units. For example, the first circuitry may comprise the first primary sensor and/or the first secondary sensor and/or the second primary sensor and/or the second secondary sensor. The second circuitry may comprise the third primary sensor and/or the third secondary sensor and/or the fourth primary sensor and/or the fourth secondary sensor. The third circuitry may comprise the fifth primary sensor and/or the fifth secondary sensor and/or the sixth primary sensor and/or the sixth secondary sensor. The fourth circuitry may comprise the seventh primary sensor and/or the seventh secondary sensor. Providing sensors as part of the circuitry, such as a PCB, may be particularly practical for sensors sensing electrical parameters, such as current sensors. However, other sensors may also benefit from forming part of the circuitry.

The first processing unit may receive, e.g. from the first primary sensor and/or the first secondary sensor, a first primary sensor signal indicative of the first motion characteristic. The first processing unit may calculate the first motion characteristic at least based on the first primary sensor signal. The second processing unit may receive, e.g. from the first primary sensor and/or from the first secondary sensor, a first secondary sensor signal indicative of the first motion characteristic. The second processing unit may calculate the first motion characteristic at least based on the first secondary sensor signal. The first processing unit may receive, e.g. from the second primary sensor and/or the second secondary sensor, a second primary sensor signal indicative of the second motion characteristic. The first processing unit may calculate the second motion characteristic at least based on the second primary sensor signal. The second processing unit may receive, e.g. from the second primary sensor and/or the second secondary sensor, a second secondary sensor signal indicative of the second motion characteristic. The second processing unit may calculate the second motion characteristic at least based on the first secondary sensor signal.

Similarly, the third, fifth, and/or seventh processing unit may receive, e.g. from a primary sensor and/or a secondary sensor, such as the third, fourth, fifth, sixth and/or seventh primary sensor and/or the third, fourth, fifth, sixth and/or seventh secondary sensor, a third, fourth, fifth, sixth and/or seventh primary sensor signal respectively indicative of the third, fourth, fifth, sixth and/or seventh motion characteristic. The third, fifth, and/or seventh processing unit may calculate the third, fourth, fifth, sixth and/or seventh motion characteristic at least based on the respective third, fourth, fifth, sixth and/or seventh primary sensor signal. The fourth, sixth, and/or eighth processing unit may receive, e.g. from the primary sensor and/or the secondary sensor, such as the third, fourth, fifth, sixth and/or seventh primary sensor and/or the third, fourth, fifth, sixth and/or seventh secondary sensor, a third, fourth, fifth, sixth and/or seventh secondary sensor signal respectively indicative of the third, fourth, fifth, sixth and/or seventh motion characteristic. The fourth, sixth, and/or eighth processing unit may calculate the third, fourth, fifth, sixth and/or seventh motion characteristic at least based on the third, fourth, fifth, sixth and/or seventh secondary sensor signal.

In some examples, a primary sensor signal and a secondary sensor signal may be received from the same sensor, such as a primary sensor and/or a secondary sensor. However, in other examples the primary sensor signal may be received from the primary sensor and the secondary sensor signal may be received from the secondary sensor, wherein the primary sensor and the secondary sensor are different sensors, e.g. of the same type or different types. In some examples the primary sensor and/or the secondary sensor may comprise a plurality of sub-sensors, e.g. the primary sensor may comprise a plurality of current sensors, such as a plurality of current sensors respectively sensing current in a plurality of phases. Hence, the primary sensor signal and/or the secondary sensor signal may comprise a plurality of sub-signals from a plurality of sub-sensors. In some examples, the primary sensor has one or more sub-sensors in common with the secondary sensor. In some examples, the primary sensor has less than all sub-sensors in common with the secondary sensor.

By the present disclosure, each motion characteristic may be redundantly measured and calculated, such as to ensure correctness of the obtained motion characteristics, and/or to at least reduce the likelihood that an erroneous value is not relied upon.

For example, for obtaining the angular position (and/or change of angular position) between the joint housing and a corresponding link, a primary sensor may be a primary output position sensor of the relevant motor. Such output position sensor may be realised by a primary magnetic sensor sensing the magnetic field of a magnetic pole ring coupled to the output part of the motor. The secondary sensor providing the corresponding redundant output position signal, may correspond to a secondary magnetic sensor, which may use the same magnetic pole ring, or alternatively another magnetic pole ring, coupled to the output part of the motor. One processor may calculate the output position based on the output position signal from the primary sensor and another processor, e.g. of the same joint assembly, may calculate the output position based on the output position signal from the secondary sensor. Such angular position and/or change of angular position may be supplemented or replaced by sensing position of the rotor of the motor, which may be realised similarly by magnetic sensors sensing a magnetic field of a magnetic pole ring coupled to the rotor of the motor.

Alternatively or additionally, for obtaining the amount of torque provided by a motor, torque sensors may be applied. In some examples, a torque sensor may be realised by an output position sensor and a rotor position sensor, as described above, and evaluating the difference between the anticipated output position based on the rotor position and the gear ratio of the motor, and the actual output position based on the output position sensor. Thus, providing two independent rotor position sensors and two independent output position sensors effectively provides for two independent torque sensors. The amount of torque provided by the motor may alternatively or additionally be obtained by a strain gauge circuit, e.g. applied to the flex spline of the motor (if the motor comprises a strain wave gear).

The amount of torque may alternatively or additionally be obtained based on the current drawn by the motor. Thus, providing one or more current sensors may be utilized to obtain the amount of torque provided by the motor.

To obtain current drawn by the motor, one or more current sensors may be provided. The amount of torque may alternatively or additionally be obtained based on the current drawn by the motor. Thus, providing one or more current sensors may alternatively or additionally be utilized to obtain the amount of torque provided by the motor. In case of a multiphase motor, current may be measured on each phase. Thus, in case of a three-phase motor, three current sensors may be provided, one for each phase. Thereby, the current drawn by the motor may be obtained redundantly, as it is established that the resulting current should be <NUM> in view of Kirchoff's current law. Hence, for example, one processing unit may calculate the current based on sensors on phases one and two, while another processing unit may calculate the current based on sensors on phases one and three. Alternatively, both processing units may each redundantly calculate the current based on measurement from all three sensors.

Some of the above mentioned sensors, e.g. the output position sensor, the rotor position sensors, the torque sensor, and/or the current sensor(s) may form part of the respective motor.

One or both of the two processing units of the same joint assembly may be adapted to compare the two calculated motion characteristics of the joint assembly. For example, the first processing unit and/or the second processing unit may be adapted to compare the two calculated first motion characteristics. For example, the first processing unit and/or the second processing unit may be adapted to compare the first motion characteristic of the first link relative to the joint housing calculated by the first processing unit at least based on the first primary sensor signal with the first motion characteristic of the first link relative to the joint housing calculated by the second processing unit at least based on the first secondary sensor signal. In accordance with the comparison revealing that the calculated motion characteristics, such as the first motion characteristics, differ by more than a differing threshold (the differing threshold may be more than <NUM>, and the differing threshold may, for example, be more than <NUM>% and/or less than <NUM>%, such as less than <NUM>%, such as less than <NUM>%, such as less than <NUM>%, such as less than <NUM>%, such as less than <NUM>%), the processing units may cause the motors to stop, e.g. the first processing unit may cause the first motor to stop and/or the second processing unit may cause the second motor to stop. Thus, the robot may be configured to stop movement, in case it is discovered that calculations of movement characteristics are inconsistent, e.g. because a sensor is providing an erroneous signal or if a processor wrongly calculates the result.

Some of the processing units, e.g. two processing units of one joint assembly, may provide for a central redundant calculation of one or more motion characteristics of further rotatable joints, such as all rotatable joints. In some examples, some of the processing units, e.g. two processing units of one joint assembly, may provide for a central redundant calculation of one or more overall motion characteristic(s) of one or more of the links or joint assemblies, such as joint housings, relative to a common reference point, e.g. the base of the robot. The one or more overall motion characteristic(s) may comprise movement and/or position and/or torque of a link and/or joint housing relative to the common reference point. For example, the first processing unit, the second processing unit, the third processing unit, the fourth processing unit, the fifth processing unit, the sixth processing unit, the seventh processing unit and/or the eighth processing unit may receive one or more further signals, e.g. one or more further sensor signals, indicative of one or more motion characteristics of the other rotatable joints, such as the one or more further rotatable joints. The first processing unit, the second processing unit, the third processing unit, the fourth processing unit, the fifth processing unit, the sixth processing unit, the seventh processing unit and/or the eighth processing unit may calculate the one or more motion characteristics and/or the one or more overall motion characteristics of the other rotatable joints, such as of each of the other rotatable joints, at least based on the one or more further signals.

In some examples, the first processing unit, the third processing unit, the fifth processing unit and/or the seventh processing unit may receive one or more further primary signals, e.g. one or more further primary sensor signals, indicative of one or more motion characteristics of the other rotatable joints, such as the one or more further rotatable joints. The first processing unit, the third processing unit, the fifth processing unit and/or the seventh processing unit may calculate the one or more motion characteristics and/or the one or more overall motion characteristics of the other rotatable joints, such as of each of the other rotatable joints, at least based on the one or more further primary signals. The second processing unit, the fourth processing unit, the sixth processing unit and/or the eighth processing unit may receive one or more further secondary signals, e.g. one or more further secondary sensor signals, indicative of the one or more motion characteristics of the other rotatable joints. The second processing unit, the fourth processing unit, the sixth processing unit and/or the eighth processing unit may calculate the one or more motion characteristics and/or the one or more overall motion characteristics of the other rotatable joints, such as of each of the other rotatable joints at least based on the one or more further secondary sensor signal. For example, the first processing unit and/or the second processing unit may receive, from the third processing unit and/or the fourth processing unit, a third motion characteristic signal indicative of the third motion characteristic of the second link relative to the second joint housing, and the first processing unit and/or the second processing unit may calculate a second overall motion characteristic of the second joint assembly, such as the second joint housing, relative to the common reference point based on the third motion characteristic signal. The second overall motion characteristic may further be based on the first motion characteristic of the first link relative to the first joint housing and/or the second motion characteristic of the second link relative to the first joint housing. Similarly, the first processing unit and/or the second processing unit may receive, from the third processing unit and/or the fourth processing unit, a fourth motion characteristic signal indicative of the fourth motion characteristic of the third link relative to the second joint housing, and the first processing unit and/or the second processing unit may calculate a third overall motion characteristic of the third link relative to the common reference point based on the fourth motion characteristic signal. The third overall motion characteristic may further be based on the first motion characteristic of the first link relative to the first joint housing, the second motion characteristic of the second link relative to the first joint housing and/or the third motion characteristic of the second link relative to the second joint housing.

Alternatively or additionally, processing units of each joint assembly may redundantly calculate overall motion characteristic(s) of itself and/or attached links, relative to the common reference point based on information from the immediate priorly located joint assembly. For example, the third processing unit and/or the fourth processing unit may receive a first overall motion characteristic signal from the first processing unit and/or the second processing unit indicative of a first overall motion characteristic of the second link relative to the common reference point, e.g. the base. The third processing unit and/or the fourth processing unit may calculate a second overall motion characteristic of the second joint housing and/or the third link relative to the common reference point based on the first overall motion characteristic signal. Calculation of the second overall motion characteristic may further be based on the third motion characteristic of the second link relative to the second joint housing and/or the fourth motion characteristic of the third link relative to the second joint housing, as calculated by the third processing unit and/or the fourth processing unit. In some examples, the third processing unit may receive a first primary overall motion characteristic signal from the first processing unit indicative of the first overall motion characteristic, and the fourth processing unit may receive a first secondary overall motion characteristic signal from the second processing unit indicative of the first overall motion characteristic. The third processing unit may calculate the second overall motion characteristic based on the first primary overall motion characteristic signal, and the fourth processing unit may calculate the second overall motion characteristic based on the first secondary overall motion characteristic signal.

Similarly, the fifth processing unit and/or the sixth processing unit may receive a second overall motion characteristic signal (e.g. a second primary overall motion characteristic signal and/or a second secondary overall motion characteristic signal) from the third processing unit and/or the fourth processing unit indicative of the second overall motion characteristic. The fifth processing unit and/or the sixth processing unit may calculate a third overall motion characteristic of the third joint housing and/or the fourth link relative to the common reference point based on the second overall motion characteristic signal (e.g. the second primary overall motion characteristic signal and/or the second secondary overall motion characteristic signal). The same applies for more distantly arranged joints.

Embodiments of the disclosure will be described in more detail in the following with regard to the accompanying figures. The figures show one way of implementing the present disclosure and are not to be construed as being limiting to other possible embodiments falling within the scope of the attached claim set.

<FIG> is a schematic diagram illustrating an exemplary robot <NUM>, which in the present example is a robotic arm, more particularly, a seven axis robotic arm.

The robot <NUM> comprises a plurality of joint assemblies, including a first joint assembly <NUM>, a second joint assembly <NUM>, a third joint assembly <NUM>, and a fourth joint assembly <NUM>. In other examples, the robot may comprise fewer or more joint assemblies. For example, the robot <NUM> may, in another configuration, comprise only one joint assembly, such as the first joint assembly <NUM>.

The robot <NUM> comprises a plurality of links, including a first link <NUM>, a second link <NUM>, a third link <NUM>, and a fourth link <NUM>. The links extends between the joint assemblies. For example, the first link <NUM> extends between a base <NUM> of the robot <NUM> and the first joint assembly <NUM>. The second link <NUM> extends between the first joint assembly <NUM> and the second joint assembly <NUM>. The third link <NUM> extends between the second joint assembly <NUM> and the third joint assembly <NUM>. The fourth link <NUM> extends between the third joint assembly <NUM> and the fourth joint assembly <NUM>.

Each of the joint assemblies <NUM>, <NUM>, <NUM>, <NUM> are adapted to rotate one or more respective links relative to the joint assembly around an axis. For example, the first joint assembly <NUM> is adapted to rotate the first link <NUM> relative to the first joint assembly <NUM> around a first axis Ax1. The first joint assembly <NUM> is adapted to rotate the second link <NUM> relative to the first joint assembly <NUM> around a second axis Ax2. The second axis Ax2 is non-parallel with the first axis Ax1. The second joint assembly <NUM> is adapted to rotate the second link <NUM> relative to the second joint assembly <NUM> around a third axis Ax3. The second joint assembly <NUM> is adapted to rotate the third link <NUM> relative to the second joint assembly <NUM> around a fourth axis Ax4. The fourth axis Ax4 is non-parallel with the third axis Ax3. The third joint assembly <NUM> is adapted to rotate the third link <NUM> relative to the third joint assembly <NUM> around a fifth axis Ax5. The third joint assembly <NUM> is adapted to rotate the fourth link <NUM> relative to the third joint assembly <NUM> around a sixth axis Ax6. The sixth axis Ax6 is non-parallel with the fifth axis Ax5. The fourth joint assembly <NUM> is adapted to rotate the fourth link <NUM> relative to the fourth joint assembly <NUM> around a seventh axis Ax7. The robot <NUM> may be put in some configurations where none of the seven axes Ax1-Ax7 are parallel. However, in some other configurations two or more of the seven axes may be parallel.

Although being described in relation to a robot <NUM> being operable relative to seven axes, the present disclosure may alternatively be applied to a robot having only six axes, or even fewer axes. For example, with respect to the example illustrated in <FIG>, movement around the third axis Ax3, may be omitted, to obtain a robot operable relative to six axes. In such situation, the first joint assembly <NUM> may be adapted to rotate the first link <NUM> relative to the first joint assembly <NUM> around the first axis Ax1 and to rotate the second link <NUM> relative to the first joint assembly <NUM> around the second axis Ax2. The second joint assembly <NUM> may be adapted to rotate the third link <NUM> relative to the second joint assembly <NUM> around the fourth axis Ax4 and to rotate the third link <NUM> relative to the second joint assembly <NUM> around the fifth axis Ax5. The third joint assembly <NUM> may be adapted to rotate the third link <NUM> relative to the third joint assembly <NUM> around the sixth axis Ax6 and to rotate the fourth link <NUM> relative to the third joint assembly <NUM> around the seventh axis Ax7. The fourth joint assembly <NUM> may be omitted. Hence, a robot operable relative to six axes may be realised with only three joint assemblies according to the present disclosure.

<FIG> is a schematic diagram illustrating an exemplary joint assembly <NUM>, <NUM>, <NUM>, such as the corresponding joint assemblies as shown in <FIG>. As illustrated, the first joint assembly <NUM>, the second joint assembly <NUM> and the third joint assembly <NUM> may be substantially identical. Therefore, the three different joint assemblies are illustrated using the same schematic diagram.

The first joint assembly <NUM> comprises a first joint housing <NUM>. The first joint assembly <NUM> comprises a first motor <NUM> connecting the first joint housing <NUM> with the first link <NUM>. The first motor <NUM> is adapted to rotate the first link <NUM> relative to the first joint housing <NUM> around a first axis Ax1 (see <FIG>). The first joint assembly <NUM> comprises a second motor <NUM> connecting the first joint housing <NUM> with the second link <NUM>. The second motor <NUM> is adapted to rotate the second link <NUM> relative to the first joint housing <NUM> around the second axis Ax2 (see <FIG>). The first joint assembly <NUM> comprises first circuitry <NUM>, e.g. a first PCB, accommodated in the first joint housing <NUM>. The first circuitry <NUM> is adapted to control the first motor <NUM> and the second motor <NUM>.

The second joint assembly <NUM> comprises a second joint housing <NUM>. The second joint assembly <NUM> comprises a third motor <NUM> connecting the second joint housing <NUM> with the second link <NUM>. The third motor <NUM> is adapted to rotate the second link <NUM> relative to the second joint housing <NUM> around a third axis Ax3 (see <FIG>). The second joint assembly <NUM> comprises a fourth motor <NUM> connecting the second joint housing <NUM> with the third link <NUM>. The fourth motor <NUM> is adapted to rotate the third link <NUM> relative to the second joint housing <NUM> around the fourth axis Ax4 (see <FIG>). The second joint assembly <NUM> comprises second circuitry <NUM>, e.g. a second PCB, accommodated in the second joint housing <NUM>. The second circuitry <NUM> is adapted to control the third motor <NUM> and the fourth motor <NUM>.

The third joint assembly <NUM> comprises a third joint housing <NUM>. The third joint assembly <NUM> comprises a fifth motor <NUM> connecting the third joint housing <NUM> with the third link <NUM>. The fifth motor <NUM> is adapted to rotate the third link <NUM> relative to the third joint housing <NUM> around a fifth axis Ax5 (see <FIG>). The third joint assembly <NUM> comprises a sixth motor <NUM> connecting the third joint housing <NUM> with the fourth link <NUM>. The sixth motor <NUM> is adapted to rotate the fourth link <NUM> relative to the third joint housing <NUM> around the sixth axis Ax6 (see <FIG>). The third joint assembly <NUM> comprises third circuitry <NUM>, e.g. a third PCB, accommodated in the third joint housing <NUM>. The third circuitry <NUM> is adapted to control the fifth motor <NUM> and the sixth motor <NUM>.

Each motor <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM> comprises a control interface <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>. As illustrated, the two motors <NUM>, <NUM>, <NUM> and <NUM>, <NUM>, <NUM> are arranged such that their respective control interface <NUM>, <NUM>, <NUM> and <NUM>, <NUM>, <NUM> are facing each other and/or the interior of their respective joint housing <NUM>, <NUM>, <NUM>. For example, the first control interface <NUM> of the first motor <NUM> is facing towards the second control interface <NUM> of the second motor <NUM>. The third control interface <NUM> of the third motor <NUM> is facing towards the fourth control interface <NUM> of the fourth motor <NUM>. The fifth control interface <NUM> of the fifth motor <NUM> is facing towards the sixth control interface <NUM> of the sixth motor <NUM>.

<FIG> is a schematic block diagram illustrating an exemplary circuitry <NUM>, <NUM>, <NUM> of a corresponding joint assembly <NUM>, <NUM>, <NUM> as shown in <FIG>. As illustrated, the first circuitry <NUM>, the second circuitry <NUM>, and the third circuitry <NUM> may be substantially identical. Therefore, the three different circuitries are illustrated using the same schematic block diagram.

The first circuitry <NUM> comprises a first processing unit <NUM> and a second processing unit <NUM>. The first processing unit <NUM> is adapted to control the first motor <NUM> (see <FIG>). The second processing unit <NUM> is adapted to control the second motor <NUM> (see <FIG>).

The second circuitry <NUM> comprises a third processing unit <NUM> and a fourth processing unit <NUM>. The third processing unit <NUM> is adapted to control the third motor <NUM> (see <FIG>). The fourth processing unit <NUM> is adapted to control the fourth motor <NUM> (see <FIG>).

The third circuitry <NUM> comprises a fifth processing unit <NUM> and a sixth processing unit <NUM>. The fifth processing unit <NUM> is adapted to control the fifth motor <NUM> (see <FIG>). The sixth processing unit <NUM> is adapted to control the sixth motor <NUM> (see <FIG>).

The processing units <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM> are adapted to receive sensor signals from various sensors, which may provide sensor signals indicative of motion characteristics of the links relative to respective joint housings. The two processing units of each circuitry may receive redundant sensor signals from different sensors, but indicative of the same parameter. Thereby, the two processing units may independently calculate a motion characteristic and compare if the results are matching each other. Thereby, a safety mechanism is achieved by redundantly calculating motion characteristics, and the risk of potential erroneous calculations or erroneous sensor outputs not being detected, is reduced.

For example, as illustrated, the first processing unit <NUM> receives a first primary sensor signal <NUM> from a first primary sensor <NUM>. The first primary sensor signal <NUM> may be indicative of a first motion characteristic (e.g. one or more of movement, position, torque, etc.) of the first link relative to the first joint housing. Thereby, the first processing unit <NUM> may calculate the first motion characteristic of the first link relative to the first joint housing at least based on the first primary sensor signal <NUM>. The second processing unit <NUM> receives a first secondary sensor signal <NUM> from a first secondary sensor <NUM>. The first secondary sensor signal <NUM> may also be indicative of the first motion characteristic of the first link relative to the first joint housing. For example, the first primary sensor <NUM> and the first secondary sensor <NUM> may both be sensors individually sensing an output position of the first motor. Thereby, the second processing unit <NUM> may calculate the first motion characteristic of the first link relative to the first joint housing at least based on the first secondary sensor signal <NUM>. Thereby, the first motion characteristic of the first link relative to the first joint housing may be sensed and calculated redundantly resulting in a more fail-safe system.

As also illustrated, the first processing unit <NUM> may receive a second primary sensor signal <NUM> from a second primary sensor <NUM>. The second primary sensor signal may be indicative of a second motion characteristic (e.g. one or more of movement, position, torque, etc.) of the second link relative to the first joint housing. Thereby, the first processing unit <NUM> may calculate the second motion characteristic of the second link relative to the first joint housing at least based on the second primary sensor signal <NUM>. The second processing unit <NUM> receives a second secondary sensor signal <NUM> from a second secondary sensor <NUM>. The second secondary sensor signal may be indicative of the second motion characteristic of the second link relative to the first joint housing. Thereby, the second processing unit <NUM> may calculate the second motion characteristic of the second link relative to the first joint housing at least based on the second secondary sensor signal <NUM>. Thus, similarly as for the first motion characteristic of the first link relative to the first joint housing, the second motion characteristic of the second link relative to the first joint housing may be redundantly calculated.

Similarly, the processors <NUM>, <NUM> of circuitry <NUM> of the second joint assembly, and processors <NUM>, <NUM> of circuitry <NUM> of the third joint assembly may receive sensor signals <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM> from sensors <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, allowing redundant acquiring and calculation of motion characteristics of relevant links.

The sensors <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM> may comprise output position sensors obtaining angular position of links relative to joint housings, rotor position sensors obtaining angular position of a rotor of a motor, current sensors measuring current drawn by a motor, and/or torque sensors obtaining torque provided by a motor.

Although, in the present example, the sensors <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, are illustrated as being external to the circuitry <NUM>, <NUM>, <NUM>, some sensors may be provided on the circuitry, e.g. on the same PCB as the processing units <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>. For example, one or more of the sensors <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM> may include one or more current sensors measuring current drawn by a motor. The one or more current sensors may conveniently be provided on the same PCB as the processing unit controlling the motors.

In some situations, it may be practical to route both primary sensor signals <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM> and secondary sensor signals <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM> to both processing units <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>. The processing units <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM> may in such situation calculate the motion characteristics based on different sensor signals, such as only the primary sensor signal <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM> or the secondary sensor signal <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>. However, alternatively, the processing units <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM> may in such situation redundantly calculate the motion characteristics based on both the primary sensor signal <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM> and the secondary sensor signal <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>. Particularly, in case of current measurements, it is practical to base calculations by both processing units <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM> on all current measurements, e.g. provided to measure current on each phase of a multiphase motor. In such setup redundancy in the measurement may be achieved in that it is established that the resulting current should be <NUM> in view of Kirchoff's current law. Hence, each phase current may be calculated based on measurements of current in the remaining phases and validated by comparison with the corresponding measured value. Thereby, redundancy of the current measurement may be observed, although each phase current is measured only by a single current sensor. The resulting values may be verified by the two processing units of the same circuitry.

The first processing unit <NUM> and/or the second processing unit <NUM> are adapted to compare the first motion characteristic calculated by the first processing unit <NUM> with the first motion characteristic calculated by the second processing unit <NUM>. In some examples, in accordance with the comparison revealing that the calculated first motion characteristics differ by more than a differing threshold, safety measures may be taken. For example, the first processing unit <NUM> may cause the first motor to stop and/or the second processing unit <NUM> may cause the second motor to stop. Similarly, the processors, <NUM>, <NUM> of the second circuitry <NUM> may be adapted to compare redundantly calculated motion characteristics and initiate safety measures in case difference. Similarly, the processors, <NUM>, <NUM> of the third circuitry <NUM> may be adapted to compare redundantly calculated motion characteristics and initiate safety measures in case difference. In some examples, a difference between any redundantly calculated motion characteristics may result in all processing units of all joint assemblies to cause all motors to stop movements.

In some examples, the two processing units of one circuitry, e.g. the first processing unit <NUM> and the second processing unit <NUM> of the first circuitry <NUM>, receives sensor signals from more, such as all, joint assemblies of the robot and redundantly calculates motion characteristics of one or more or each of the joint assemblies, e.g. relative to a common reference point and/or relative to individual joint assemblies. For example, the first processing unit <NUM> may receive the first primary sensor signal <NUM>, the second primary sensor signal <NUM>, the third primary sensor signal <NUM>, the fourth primary sensor signal <NUM>, the fifth primary sensor signal <NUM>, the sixth primary sensor signal <NUM>, and the seventh primary sensor signal <NUM> (see <FIG>). Thereby, the first processing unit <NUM> may calculate motion characteristics of each of the joint assemblies, e.g. relative to a common reference point and/or relative to individual joint assemblies. Similarly, the second processing unit <NUM> may receive the first secondary sensor signal <NUM>, the second secondary sensor signal <NUM>, the third secondary sensor signal <NUM>, the fourth secondary sensor signal <NUM>, the fifth secondary sensor signal <NUM>, the sixth secondary sensor signal <NUM>, and the seventh secondary sensor signal <NUM> (see <FIG>). Thus, calculations of motion characteristics relying on sensor input from several joints, such as motion characteristics relative to a common reference point, may similarly be redundantly calculated by a pair of processing units, such as the first processing unit <NUM> and the second processing unit <NUM>.

The sensor signals, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM> may be distributed through the system to allow the processing units of one joint assembly to calculate the motion characteristics based on sensor inputs from several joints. For example, the fifth processing unit <NUM> and the sixth processing unit <NUM> may transmit the fifth primary sensor signal <NUM>, the fifth secondary sensor signal <NUM>, the sixth primary sensor signal <NUM>, and the sixth secondary sensor signal <NUM> to the third processing unit <NUM> and the fourth processing unit <NUM>. The third processing unit <NUM> and the fourth processing unit <NUM> may transmit the third primary sensor signal <NUM>, the fifth primary sensor signal <NUM>, the third secondary sensor signal <NUM>, the fifth secondary sensor signal <NUM>, the fourth primary sensor signal <NUM>, the sixth primary sensor signal <NUM>, the fourth secondary sensor signal <NUM>, and the sixth secondary sensor signal <NUM> to the first processing unit <NUM> and the second processing unit <NUM>. Thereby, the first processing unit <NUM> and the second processing unit <NUM> may receive all sensor signals.

Alternatively or additionally, processing units of each of the joint assemblies may calculate an overall motion characteristic relative to a common reference point, e.g. the base <NUM> of the robot <NUM> (see <FIG>), of the joint assembly itself and/or of a link extending from the respective joint assembly. For example, the first processing unit <NUM> and/or the second processing unit <NUM> may calculate a first overall motion characteristic of the second link relative to a common reference point, e.g. the base of the robot. The first processing unit <NUM> and/or the second processing unit <NUM> may be capable to calculate the first overall motion characteristic of the second link relative to the common reference point because the common reference point is directly coupled to the first joint assembly, e.g. by the first link <NUM> (see <FIG>). The first processing unit <NUM> and/or the second processing unit <NUM> may transmit the first overall motion characteristic of the second link as a first overall motion characteristic signal to the third processing unit <NUM> and/or the fourth processing unit <NUM>. Because the first overall motion characteristic signal is indicative of the first overall motion characteristic of the second link, and the second joint assembly is directly coupled to the second link, the third processing unit and/or the fourth processing unit is able to calculate a second and/or third overall motion characteristic of the second joint housing and/or the third link relative to the common reference point based on the first motion characteristic signal, as well as the third primary sensor signal <NUM>, the third secondary sensor signal <NUM>, the fourth primary sensor signal <NUM>, and the fourth secondary sensor signal <NUM>, as needed. By such procedure, global motion characteristics of each link and joint may be calculated in a distributed manner, as the processing units of each joint assembly may each calculate the global motion characteristics of itself and associated links.

Alternatively or additionally, the calculated motion characteristics from each processing unit of each joint assembly, e.g. after the two processing units of the same joint assembly have verified that their calculated results match, may be transmitted to processing units of one joint assembly, so as to allow the two processing units of that one joint assembly to redundantly calculate the overall motion characteristics relative to the common reference point. For example, the fifth processing unit <NUM> may transmit the calculated fifth and sixth motion characteristic to the first processing unit <NUM>, and the third processing unit <NUM> may transmit the calculated third and fourth motion characteristic to the first processing unit <NUM>. Thereby, as the first processing unit <NUM> itself has calculated the first and second motion characteristic, the first processing unit <NUM> may calculate overall motion characteristics of each of the links and/or joints relative to the common reference point. To provide for redundancy, the sixth processing unit <NUM> may transmit the calculated fifth and sixth motion characteristic to the second processing unit <NUM>, and the fourth processing unit <NUM> may transmit the calculated third and fourth motion characteristic to the second processing unit <NUM>. Together with its own calculated first and second motion characteristic, the second processing unit <NUM> may also calculate the overall motion characteristics of each of the links relative to the common reference point.

Transmission of data between the processing units may be facilitated by bus communication, such as a secured bus communication, wherein the signals may be encrypted such as to ensure they are only read and used by the intended receiving processing unit.

<FIG> is a schematic diagram illustrating an exemplary joint assembly <NUM>, such as the fourth joint assembly <NUM> as shown in <FIG>. The fourth joint assembly <NUM> comprises a fourth joint housing <NUM>. The fourth joint assembly <NUM> comprises a seventh motor <NUM> connecting the fourth joint housing <NUM> with the fourth link <NUM>. The seventh motor <NUM> is adapted to rotate the fourth link <NUM> relative to the fourth joint housing <NUM> around the seventh axis Ax7 (see <FIG>). The fourth joint assembly <NUM> comprises a tool interface <NUM> adapted for connecting the fourth joint housing <NUM> with a tool to be controlled by the robot <NUM>. The fourth joint assembly <NUM> comprises fourth circuitry <NUM>, such as a fourth PCB, accommodated in the fourth joint housing <NUM>. The fourth circuitry <NUM> is adapted to control the seventh motor <NUM> and the tool interface <NUM>.

The seventh motor <NUM> comprises a seventh control interface <NUM>. The tool interface <NUM> comprises a tool control interface <NUM>. As illustrated, the seventh motor <NUM> and the tool interface <NUM> are arranged such that their respective control interfaces <NUM>, <NUM> are facing each other and/or the interior of the fourth joint housing <NUM>. The seventh control interface <NUM> of the seventh motor <NUM> is facing towards the tool control interface <NUM> of the tool interface <NUM>.

<FIG> is a schematic block diagram illustrating exemplary circuitry <NUM>, such as the fourth circuitry <NUM> of the fourth joint assembly <NUM> as shown in <FIG>. The fourth circuitry <NUM> comprises a seventh processing unit <NUM> and an eighth processing unit <NUM>. The seventh processing unit <NUM> is adapted to control the seventh motor <NUM> (see <FIG>). The eighth processing unit <NUM> is adapted to control the tool interface <NUM> (see <FIG>).

The seventh processing unit <NUM> receives a seventh primary sensor signal <NUM> from a seventh primary sensor <NUM>. The seventh primary sensor signal <NUM> may be indicative of a seventh motion characteristic (e.g. one or more of movement, position, torque, etc.) of the fourth link relative to the fourth joint housing. Thereby, the seventh processing unit <NUM> may calculate the seventh motion characteristic of the fourth link relative to the fourth joint housing at least based on the seventh primary sensor signal <NUM>. The eighth processing unit <NUM> receives a seventh secondary sensor signal <NUM> from a seventh secondary sensor <NUM>. The seventh secondary sensor signal <NUM> may also be indicative of the seventh motion characteristic of the fourth link relative to the fourth joint housing. Thereby, the eighth processing unit <NUM> may calculate the seventh motion characteristic of the fourth link relative to the fourth joint housing at least based on the seventh secondary sensor signal <NUM>.

The disclosure has been described with reference to a preferred embodiment. However, the scope of the invention is not limited to the illustrated embodiment, and alterations and modifications can be carried out without deviating from the scope of the invention.

Claim 1:
A joint assembly (<NUM>, <NUM>, <NUM>, <NUM>) for a robot (<NUM>), comprising:
- a joint housing (<NUM>),
- a first motor (<NUM>) connecting the joint housing with a first link (<NUM>) and the first motor being adapted to rotate the first link relative to the joint housing around a first axis (AX1),
- a second motor (<NUM>) connecting the joint housing with a second link (<NUM>) and the second motor being adapted to rotate the second link relative to the joint housing around a second axis (AX2) non-parallel with the first axis,
- circuitry (<NUM>) accommodated in the joint housing and comprising a first processing unit (<NUM>) and a second processing unit (<NUM>), the first processing unit being adapted to control the first motor and the second processing unit being adapted to control the second motor,
wherein the first processing unit receives a first primary sensor signal (<NUM>) indicative of a first motion characteristic of the first link relative to the joint housing and calculates the first motion characteristic of the first link relative to the joint housing at least based on the first primary sensor signal, and
wherein the second processing unit receives a first secondary sensor signal (<NUM>) indicative of the first motion characteristic of the first link relative to the joint housing and calculates the first motion characteristic of the first link relative to the joint housing at least based on the first secondary sensor signal.