System and method for sorting and / or packing items

A hybrid robotic and human system addresses the inefficiencies in sorting and packing nonlinear fruits by using computer-controlled conveyors and robotic arms to inspect, cut, and pack vine fruit, enhancing efficiency and accuracy in achieving target weights and reducing human error.

GB2630978APending Publication Date: 2024-12-18WOOTZANO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
GB2023009045
Authority / Receiving Office
GB · GB
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-06-16
Publication Date
2024-12-18

AI Technical Summary

Technical Problem

The existing sorting and packing processes for fresh produce, particularly nonlinear fruits like grapes, are inefficient due to the complexity of their irregular shapes and sizes, leading to limited automation and increased human subjectivity, which results in reduced throughput and quality inspection challenges.

Method used

A hybrid robotic and human system that uses computer-controlled conveyors, robotic arms with end effectors, cameras, and machine learning models to inspect, cut, and pack vine fruit into containers, ensuring accurate weight management and defect removal, while human operators assist in topping up containers to achieve target weights.

Benefits of technology

This system significantly increases the efficiency and accuracy of sorting and packing by automating defect removal and weight management, reducing human error and improving throughput, while ensuring precise handling of irregularly shaped produce.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

A robot-assisted method of sorting and / or packing vine fruit into containers 142 by a hybrid robotic and human system comprises placing vine fruit 133 onto a computer-controlled conveyor 130a, 130b, inspecting the vine fruit 133 for defects, removing any fruit identified as having a defect from the conveyor130a, 130b, weighing the vine fruit, in the event that the weight of the vine fruit 133 is above a selected threshold, cutting the vine fruit using a robotic end effector 120 mounted on a robotic arm 110 to produce a cut vine having an estimated weight below the selected threshold, placing the cut vine into a container 142, checking the weight of the container 142 holding the cut vine, determining whether the weight of the container 142 holding the cut vine is within a selected threshold weight range, and in the event that the determined weight is outside the selected threshold weight range, topping up the container with vine fruit to reach the selected threshold weight range. Placing the cut vine into a container 142 may comprise using a robotic end effector 122 mounted on a robotic arm 114. Weighing the vine fruit 133 may comprise making a determination based upon received image data of the vine fruit 133. Inspecting the vine fruit 133 for defects may comprise applying a trained machine learning model to received image data of the vine fruit 133. Determining whether the weight of the container 142 holding the cut vine is within a selected threshold weight range may comprise passing the container 142 over an in-line weight scale 260.
Need to check novelty before this filing date? Find Prior Art

Description

Field of the invention The present disclosure relates to the field of sorting and / or packing items, for example fresh produce such as fruit and / or vegetables, and in particular to vine fruit or vegetables such as bunches of grapes. Background Once fresh produce such as fruit and / or vegetables have been grown and harvested, they are sorted and packed into containers for transport to vendors (such as supermarkets) where they are sold. Typically, this process involves a plurality of human operators who select which fruit / vegetables to select for packing, as well as sorting where these are to be packed. This sorting and packing may have to be performed in accordance with rules specific to the relevant fruit and / or vegetables. For example, grapes may have to be grouped based on weight and / or colour. This can involve a large number of human operators to perform this sorting and packing (e.g. there may be three human operators involved for packing bunches of grapes into containers). This may bring about inefficiencies in the supply chain such as limiting the throughput of fruit and / or vegetables to be sorted, as well as introducing a number of subjective judgements which the human operators will have to make to determine how to sort and / or pack the fruit and / or vegetables. Furthermore, while processing automation for linear and fixed shape fruits like tomatoes and apples has to some extent already been done which is giving a huge improvement in their handling, very little work has been done in automating the process of nonlinear fruits like grapes, blueberries and vine tomatoes. Because of their irregular shape and size, it makes the automation complex, while at the same time quality inspection will be a very complicated task as we need to reach very narrow areas to cut the unwanted fruits. Summary of the invention Aspects of the invention are as set out in the independent claims and optional features are set out in the dependent claims. Aspects of the invention may be provided in conjunction with each other and features of one aspect may be applied to other aspects. In a first aspect there is provided a robot-assisted method of sorting and / or packing vine fruit into containers by a hybrid robotic and human system. The method comprises placing vine fruit onto a computer-controlled conveyor, inspecting the vine fruit for defects, removing any fruit identified as having a defect from the conveyor, weighing the vine fruit, in the event that the weight of the vine fruit is above a selected threshold, cutting the vine fruit using a robotic end effector mounted on a robotic arm to produce a cut vine having an estimated weight below the selected threshold, placing the cut vine into a container, checking the weight of the container holding the cut vine, determining whether the weight of the container holding the cut vine is within a selected threshold weight range, and in the event that the determined weight is outside the selected threshold weight range, topping up the container with vine fruit to reach the selected threshold weight range. It will be understood that the threshold weight range may simply be a target weight / target minimum or threshold weight. Placing the cut vine into a container may comprise using a robotic end effector mounted on a robotic arm to place the cut vine into the container. Weighing the vine fruit may comprise receiving image data of the vine fruit and making a determination of the weight of the vine fruit based on the received image data; The method may comprise making a determination as to where to cut the vine fruit based on the determined weight of the vine fruit, and controlling an end effector of a robotic arm to cut the vine fruit. Inspecting the vine fruit for defects and removing any fruit identified as having a defect from the conveyor may comprise receiving image data of the vine fruit and applying a trained machine learning model to identify defects in the vine fruit and controlling an end effector of a robotic arm to remove the vine fruit from the conveyor. Controlling an end effector of a robotic arm to remove the vine fruit from the conveyor may comprise controlling an end effector of a robotic arm to cut away any vine fruit identified as having a defect from the rest of the vine, and controlling an end effector of a robotic arm to remove the cut away vine fruit from the conveyor. In some examples it may be the same end effector / robotic arm that does cutting and removing, or it could be two different end effectors / robotic arms. Determining whether the weight of the container holding the cut vine is within a selected threshold weight range may comprise passing the container by the conveyor over an inline weight scale. Topping up the container with vine fruit to reach the selected threshold weight in the event that the determined weight is outside the selected threshold weight range may be performed by a human. Determining whether the weight of the container holding the cut vine is within a selected threshold weight range may comprise passing the container by the conveyor over an inline weight scale, and wherein a second container is placed on a second weight scale adjacent to the container holding the cut vine on the in-line weight scale, and wherein a display provides an indication of the difference between the weight of the container holding the cut vine on the in-line weight scale and the lower limit of the selected threshold weight range, and wherein the difference displayed by the display reduces by the corresponding weight of fruit added to the second container. Topping up the container with vine fruit to reach the selected threshold weight may comprise adding the fruit added to the second container to the container holding the cut vine on the in-line weight scale. The step of placing vine fruit onto a computer-controlled conveyor may be performed by a human. The method may further comprise feeding the container containing the vine fruit into a flow wrapper or sealer. Placing the cut vine into a container using a robotic end effector mounted on a robotic arm may comprise placing the cut vine into a container on a second computer-controlled conveyor using a robotic end effector mounted on a robotic arm. In another aspect there is provided a hybrid system for sorting and / or packing vine fruit into containers. The hybrid system comprises a first robotic arm comprising at least one first end effector for cutting grapes from a bunch; at least one camera for providing image data of vine fruit; a first computer-controlled conveyor; a first in-line weight scale; and a controller configured to receive the image data of the vine fruit and to make a determination of the weight of the vine fruit based on the received image data; wherein the controller is configured to control the at least one first end effector of a robotic arm to cut the vine fruit based on the determined weight of the vine fruit; and wherein the controller is configured to control the first computer-controlled conveyor to move the container onto the first in-line weight scale. The controller may be configured to use image data to receive image data of the vine fruit and applying a trained machine learning model to identify defects in the vine fruit and control an end effector of a robotic arm to remove the vine fruit from the first computer-controlled conveyor. The controller may be configured to control the at least one first end effector of the first robotic arm to hold and manipulate the cut vine fruit into a container. The first robotic arm may comprise a manipulation end effector, and wherein the controller is configured to control the manipulation end effector of the first robotic arm to hold and manipulate the cut vine fruit into a container. The hybrid system may further comprise a second robotic arm comprising at least one manipulation end effector for holding and manipulating a bunch of grapes for packing into a container; and wherein the controller is configured to control the at least one end effector of the second robotic arm to hold and manipulate the cut vine fruit into a container. The at least one manipulation end effector may comprise a pressure sensing assembly for providing an indication of a contact pressure and wherein the controller is configured to control the at least one second end effector of the second robotic arm to hold and manipulate the cut vine fruit into a container based on an indication of the contact pressure. The controller may be configured to receive sensor signals from the pressure sensing assembly of the second robotic arm to obtain an indication of: (i) a magnitude of contact pressure for contact between the end effector and the item held by the end effector; and (ii) a direction of contact pressure for contact between the end effector and the item held by the end effector; and wherein the controller is configured to determine whether the end effector is correctly holding the item based on the indication of the magnitude of the contact pressure and the indication of the direction of contact pressure. The controller may be configured to perform semantic image segmentation on the received image data to determine the location of stems or stalks relative to the fruit, and wherein the controller is configured to use the determined location of stems or stalks to control the at least one end effector of the first robotic arm to cut the vine fruit at a stem or stalk. The controller may be configured to determine an orientation to hold the vine fruit in based on the received image data. The hybrid system may further comprise a second computer-controlled conveyor wherein the controller is configured to place the cut vine into a container using a robotic end effector mounted on a robotic arm into a container on the second computer-controlled conveyor. The second computer-controlled conveyor may be on the same side of the robotic arm as the first computer-controlled conveyor. The hybrid system may further comprise: a second computer-controlled conveyor on an opposite side of the robotic arm to the first computer-controlled conveyor; a second in-line weight scale in line with the second computer-controlled conveyor; and wherein the controller is configured to receive the image data of the vine fruit on the second computer-controlled conveyor and to make a determination of the weight of the vine fruit based on the received image data; wherein the controller is configured to control the at least one first end effector of a robotic arm to cut the vine fruit from the second computer-controlled conveyor based on the determined weight of the vine fruit; and wherein the controller is configured to control the second computer-controlled conveyor to move the container onto the second in-line weight scale. The robotic arm may therefore be operable to alternate between two conveyors either side of it. In another aspect there is provided a hybrid system for placing fresh produce such as fruit into containers. The hybrid system comprises at least one robotic arm comprising at least one first end effector arranged to manipulate the fresh produce and place the fresh produce into containers; at least one camera for providing image data of the fresh produce; a computer-controlled conveyor arranged to convey containers; a first weigh scale in line with the computer controller conveyor and arranged to receive and weigh a container from the computer-controlled conveyor; a display for displaying the weight of the container received from the computer-controlled conveyor. The hybrid system may further comprise: a second weigh scale adjacent to the first weigh scale; and wherein the display is configured to display the difference the difference between a predetermined target weight and the sum of the weight as weighed by the first weigh scale and the weight as weighed by the second weigh scale. In another aspect there is provided robot-assisted method for placing a target weight of fresh produce such as fruit into containers, the method comprising: manipulating fresh produce using an end effector of a robotic arm and placing the fresh produce into a container on a computer-controlled conveyor; conveying the container containing the fresh produce onto a first weigh scale in line with the computer-controlled conveyor; displaying the weight of the container on the first weigh scale; and topping up the container with loose fruit if the displayed weight is less than a selected threshold weight. The robot-assisted method may further comprise: placing a second container a second weight scale adjacent to the first weigh scale, and displaying the difference between a predetermined target weight and the sum of the weight as weighed by the first weigh scale and the weight as weighed by the second weigh scale, and: wherein topping up the container with loose fruit to reach the predetermined target weight comprises adding loose fruit to the second container until the displayed weight is zero or less, and adding the loose fruit added to the second container to the first container. In another aspect there is provided a hybrid system for sorting and / or packing fresh produce such as fruit into containers, the hybrid system comprising: a robotic arm comprising at least one first end effector for manipulating fresh produce; at least one camera for providing image data of the fresh produce; a first computer-controlled conveyor and a second computer-controlled conveyor; a controller configured to use image data to receive image data of the fresh produce and applying a trained machine learning model to identify defects in the fresh produce and control an end effector of the robotic arm to move the fresh produce from the first computer-controlled conveyor to the second computer-controlled conveyor in the event that no defects are identified. In another aspect there is provided a hybrid system for sorting and / or packing fresh produce such as fruit into containers, the hybrid system comprising: a robotic arm comprising at least one first end effector for manipulating fresh produce; at least one camera for providing image data of the fresh produce; a first computer-controlled conveyor and a second computer-controlled conveyor arranged on a first side of the robotic arm, and a third computer-controlled conveyor and a fourth computer-controlled conveyor arranged on a second side of the robotic arm; a controller configured to receive image data of fresh produce on the first computer-controlled conveyor, second computer-controlled conveyor, third computer-controlled conveyor and fourth computer-controlled conveyor, wherein the controller is configured to control the at least one first end effector to alternately manipulate the fresh produce from each of the first computer-controlled conveyor, second computer-controlled conveyor, third computer-controlled conveyor and fourth computer-controlled conveyor and place the fresh produce in containers. Fresh produce may be arranged to be fed onto the first and third computer-controlled conveyors and containers are arranged to be fed onto the second and fourth computer-controlled conveyors, and wherein the controller may be configured to control the at least one first end effector to manipulate the fresh produce from the first and third computer-controlled conveyors into containers on the second and fourth computer-controlled conveyors respectively. The controller may be configured to assist humans with the manipulation of fresh produce into the containers whereby the controller alternately manipulates fresh produce into containers with humans who manually manipulate fresh produce into containers. The hybrid system may further comprise first and second in-line weight scales in line with the first and second computer-controlled conveyors; wherein the controller may be configured to control the first and second computer-controlled conveyors to move the containers onto the first and second in-line weight scales. The hybrid system may further comprise a display for displaying the weight of fresh produce in the container on each of the first and second in-line weight scales. In another aspect there is provided a robot assisted method of placing fresh produce such as fruit into containers, the method comprising: feeding fresh produce onto second and fourth computer-controlled conveyors; feeding empty containers onto first and second computer-controlled conveyors; alternating between a human and a robotic arm moving the fresh produce from the second and fourth computer-controlled conveyors into the containers on the first and third computer-controlled conveyors; The robot assisted method may further comprise feeding the packed containers containing fresh produce onto a corresponding weight scale, and adding loose fruit to a container if the weight scale indicates that the weight of fresh produce in the container is less than a selected threshold target weight. The addition of loose fruit may be performed by a human and / or the robotic arm. In another aspect there is provided a robotic arm for manipulating fresh produce such as fruit, the robotic arm comprising a plurality of independently controllable end effectors, wherein each end effector comprises: a pair of opposing scoops coupled via a connecting portion, wherein each opposing scoop comprises pressure sensing means. The pressure sensing means may be arranged to detect at least one of (i) the magnitude and (ii) the direction of pressure on each of the digits caused by the fresh produce. Each opposing scoop may comprise a plurality of digits and wherein each digit comprises a pressure sensing means. Each digit may comprise a curved fingertip comprising an extrusion configured to support the fresh produce. The robotic arm may further comprise a controller, and wherein the controller may be configured to control operation of at least one of the pair of opposing scoops based on the detected magnitude and / or direction of pressure. The controller may be configured to determine whether an end effector is correctly holding an item of fresh produce based on an indication of whether the fresh produce is moving relative to the digits, and wherein the controller is configured to control the end effector to manipulate at least one of the digits in response to a determination that the end effector is not correctly holding the fresh produce. The controller may be configured to determine the approximate shape of the fresh produce based on the at least one of (i) the magnitude and (ii) the direction of pressure on each of the digits, and wherein the controller is configured to manipulate at least one of the scoops and / or each digit based on the determined approximate shape. Drawings Embodiments of the disclosure will now be described, by way of example only, with reference to the accompanying drawings, in which: Fig. 1 shows an exemplary hybrid robotic item packing apparatus or system 100 adapted for packing vine fruit such as grapes. Fig. 2 shows an example process flow diagram for a robot-assisted method 200 of packing fresh produce, for example using the system of Fig. 1 Fig. 3 shows another exemplary hybrid robotic item packing apparatus or system 400 adapted for packing fresh produce. Fig. 4 shows an example robotic arm 614 for manipulating fresh produce such as fruit. Specific description An exemplary hybrid robotic packing system will now be described with reference to Fig. 1. Fig. 1 shows an item packing apparatus or system 100 adapted for packing vine fruit such as grapes. However, it will be understood that the item packing apparatus or system 100 of Fig. 1 may be adapted for use with other fresh produce, such as fruit and vegetables, and in particular other non-linear fruits and vegetables, such as bunches of bananas or other vine fruits or vegetables such as tomatoes. The item packing apparatus or system is a hybrid system for sorting and / or packing vine fruit into containers. This means that the system is designed for use with both human packers and robots, with robots assisting human packers to pack vine fruit into containers and increase the throughput and number of containers that may be packed per unit time, such as per minute. The system 100 comprises a first robotic arm 110 comprising at least one first end effector 120 for cutting grapes from a bunch placed on a first computer-controlled conveyor 130a and a second computer-controlled conveyor 130b, placed parallel to each other either side of the first robotic arm 110. The at least one first end effector 120 may comprise a cutting means for cutting grapes from a bunch. The bunch of grapes may be placed on either conveyor 130a, 130b by a human packer 150. The system 100 also comprises an optional second robotic arm 114 spaced from the first robotic arm 110 along the first and second computer-controlled conveyors 130a, 130b. The second robotic arm 114 comprises at least one second end effector 122 for holding and manipulating a bunch of grapes for packing into a container 142. The first and second robotic arms 110, 114 are provided on respective movable platforms 112, 116. The fact that they are movable may mean that they can be taken out of the way if the task is to be performed manually. As a result, either robotic arm is optional in the sense that it may be replaced with a human packer 150. In particular, it is envisaged that the second robotic arm 114 may be replaced or at least assisted by a human packer packing cut vine fruit into containers 142. The movable platforms 112, 116 may each comprise a controller such as a local controller for controlling each robotic arm 110, 114 and its respective end effectors 120, 122. In the example shown in Fig. 1, the system 100 further comprises an optional camera 155 arranged to view a region of the first conveyor 130a proximate to each robotic arm 110, 114 such that in the example shown in Fig. 1. However, it will be understood that in other examples there may be more cameras and / or one of the cameras may be replaced with a light detection and ranging, LIDAR, apparatus. The system may include one or more lighting elements. The lighting elements may be configured to direct light to a region in which the cameras are configured to obtain images of the items. For example, the one or more lighting elements may be configured so that each camera obtains pictures of an illuminated item. The one or more lighting elements may be connected to the cameras and / or controller to enable lighting to be timed so that it is on when images are to be obtained. For example, each camera may have its own associated light. The system 100 also comprises a controller 160 which includes data store 164, processor 166 and a communications interface 168. The controller 160 may additionally or alternatively include a graphical user interface, GUI (not shown). In some examples the functionality of the controller may be provided by a (local) controller mounted in the movable platform 112, 116 of one of the robotic arms 110, 114, for example such that one (local) controller is configured to act as a “master” controller and the other controller is configured to act as a “slave” controller. Both the first and the second computer-controlled conveyors 130a, 130b are reachable by the first robotic arm 110 and the second robotic arm 114, such that the second robotic arm 114 can hold and manipulate a cut bunch of grapes from each of the first conveyor 130a and the second conveyor 130b into containers 142 on each respective conveyor 130a, 130b. While in the example shown in Fig. 1 both bunches of grapes 132 and containers 142 are fed onto the same conveyors 130a, 130b, in some examples one conveyor may be used solely for grapes 132 and the other conveyor may be used solely for containers 142. In this way the second robotic arm 114, for example, may manipulate cut bunches of grapes / cut vine fruit from one conveyor into a container 142 on another conveyor. Each conveyor 130a, 130b may then carry the packed containers 142 away for sealing / packaging. In the example shown the first conveyor 130a and the second conveyor 130b are movable belts configured to transport items such as fruits disposed thereon. In some examples at the end of a conveyor, such as the first conveyor 130a, there is a collector for collecting loose grapes e.g., grapes that have fallen off of the bunch / vine. The loose grapes collected in the collector may be used for packing, for example by the second robotic arm 114 or by a human packer, as will be described in more detail below. In some examples there may be an infra-red sensor proximate to each robotic arm 110, 114. The infra-red sensors may be configured to determine the presence of an object / item on the conveyor 130 proximate to each robotic arm 110, 114. The controller may be configured to use sensor inputs from each infra-red sensor 150, 152 to control operation of each robotic arm 110, 114 and / or control operation of the conveyor 130. Although an infra-red sensor is described, other types of sensors configured to determine the presence of an object / item such as a bunch of grapes on a conveyor 130a, 130b may be used. For example, each conveyor 130a, 130b may comprise pressure sensors underneath configured to detect the presence of an object / item on the conveyor 130a, 130b. The at least one second end effector 122 may comprise a pressure sensing assembly for providing an indication of a contact pressure. The pressure sensing assembly may comprise a pressure sensing assembly (as described in more detail below with reference to Fig. 6). The pressure sensing assembly may comprise: (i) a plurality of piezoresistive sensors each configured to obtain piezoresistive signals; and (ii) a plurality of piezoelectric sensors each configured to obtain piezoelectric signals, thereby to provide the pressure sensing assembly. In some examples the at least one second end effector 122 may comprise a pair or more of end effectors for determining a contact pressure of an item / bunch of grapes held there between. In some examples the at least one second end effector 122 may comprise a scoop or a scooped portion (as shown in Fig. 6 described in more detail below) for supporting the underside of a bunch of grapes when held and manipulated by the at least one second end effector 122. The scoop or scooped portion may comprise a plurality of digits, and each digit may comprise a portion with an electronic skin. The camera 155 is arranged to provide image data of a bunch of grapes travelling on at least one of the conveyors, such as the first conveyor 130a. The controller 160 is configured to receive the image data of the bunch of grapes and to make a determination of the weight of the bunch of grapes based on the received image data. The controller may be configured to receive image data of a bunch of grapes to be cut from a camera 160 proximate to the first robotic arm 110, and / or the controller 160 may also be configured to receive image data of a cut bunch of grapes from a camera 155 proximate to the second robotic arm 114 and to make a determination of the weight of the cut bunch of grapes based on the received image data from the pair of cameras 155 proximate to the second robotic arm 114. The controller may be configured to make a determination as to whether to pack the cut vine / cut bunch of grapes into a container 142 based on the determined weight of the cut bunch of grapes. In some examples the controller may be configured to determine which container 142 to pack the cut bunch of grapes into or select a container 142 from a plurality of containers 142 to pack the cut bunch of grapes in to based on the determined weight of the cut vine / cut bunch of grapes and / or a target weight. The controller 160 is configured to control the at least one first end effector 120 of the first robotic arm 110 to cut the vine / bunch of grapes based on the determined weight of the cut vine / bunch of grapes, and the controller is configured to control the at least one second end effector 122 of the second robotic arm 114 to hold and manipulate the cut vine / cut bunch of grapes into a container. However, in some examples the controller 160 may be configured to only control the first robotic arm 110. In examples where the at least one second end effector 122 comprises a pressure sensing assembly, the controller may be configured to control the at least one second end effector 122 of the second robotic arm 114 to hold and manipulate the cut vine / cut bunch of grapes into a container 142 based on an indication of the contact pressure. As noted above, the system 100 shown in Fig. 1 is a hybrid system - meaning that it is designed to operate with humans and robots working alongside each other. In the present case, human packers 150 may work alongside the first robotic arm 110 to cut the vine / bunch of grapes to a rough estimation of a target weight. Additionally, or alternatively, human packers 150 may work alongside the second robotic arm 120 to pack the cut vine / bunches of grapes into containers 142. Although human packers 150 are only shown in Fig. 1 as being adjacent to the first conveyor 130a, it will be understood that human packers 150 may be adjacent to both conveyors 130a, 130b Each robotic arm 110, 120 may therefore work alongside human packers 150 on either conveyor 130a, 130b. For example, the robotic arm may alternate between working on one conveyor 130a, 130b and the other. Additionally, or alternatively, the controller 160 may be configured to obtain image data of either conveyor 130a, 130b and identify where a robot may be able to assist a human packer 150 and work where the controller 160 has identified vine fruit upon which the use of robot assistance would speed up packing. The controller 160 may also be configured to control each conveyor to move vine fruit along. For example, the controller 160 may be configured to control the first conveyor 130 based on operation of the first robotic arm 110 and / or the second robotic arm 114. The controller may be configured to control the first conveyor 130 based on control of at least one of the at least one first end effector 120 of the first robotic arm 110 and / or the at least one second end effector 122 of second robotic arm 114. For example, the controller may be configured to control the first conveyor 130 in response to the at least one first end effector 120 of the first robotic arm 110 cutting a bunch of grapes. For example, as the bunch of grapes is being cut, the controller 160 may be configured to control operation of the first conveyor 130 to separate the cut bunch of grapes from the remainder of the bunch, to make it easier for the second robotic arm 114 / the at least one second end effector 122 to hold and manipulate the cut bunch of grapes. The controller may also be configured to control operation of one of the conveyors 130a, 130b, for example based on operation of the second robotic arm 114 and / or when a container 142 has been packed to a predetermined weight or weight range. Each conveyor 130a, 130b may comprise an in-line weight scale 260. The in-line weight scale may be configured to weigh a container 142 containing cut vine fruit 133 that has been passed from the respective conveyor 130a, 130b. In the example shown in Fig. 1, only the first conveyor 130a has an in-line weight scale 260, although it will be appreciated that either or both conveyors 130a, 130b may have in-line weight scales 260. The controller 160 is configured to control the corresponding conveyor 130a to convey containers 142 containing cut vine fruit 133 onto the corresponding in-line weight scale 260. Adjacent to each in-line weight scale 260 is a display 220 so that a human packer 150 can see a weight. The displayed weight may be the weight of the cut vine 133 in the container 142. However, in some examples, the displayed weight is the weight difference between the weight of the cut vine 133 in the container 142 and a target weight. This may advantageously enable the human packer 150 to easily top up the container 142 with additional vine fruit (such as loose vine fruit, as discussed above) if the measured weight is below the target weight. In the example shown in Fig. 1, there is a also a second weight scale 270 adjacent to the in-line weight scale 260. In the example shown, the display 220 is configured to display an indication of the difference between the weight of the container 142 holding the cut vine on the in-line weight scale 260 and the selected target weight, and wherein the difference displayed by the display reduces by the corresponding weight of fruit added to the second weight scale 270. This may advantageously make it very easy and efficient to accurately ensure that every container 142 contains at least the target weight of produce. In some examples the second weight scale 270 may comprise a second container for containing loose fruit for addition to the container 142 on the in-line weight scale 260. In some examples the controller 160 may have already packed a cut bunch of grapes into a container 142, but the container 142 is still below a target weight. In such examples the controller may be configured to cut a new bunch of grapes based on the difference between the target weight and the bunch of grapes already placed in the container 142. For example, the controller 160 may determine a difference weight and may be configured to control the first robotic arm 110 and the at least one first end effector 120 to cut the bunch of grapes to obtain a cut bunch of grapes having a weight approximately equal to the difference weight. In particular, the controller 160 may do this for either conveyor 130a, 130b - for example, if it is identified that there is a weight difference in a container 142 on the second conveyor 130b, the controller 160 may control the first robotic arm 110 and the at least one first end effector 120 to cut a bunch of grapes on the first conveyor 130a to obtain a cut bunch of grapes having a weight approximately equal to the difference weight. The first conveyor 130a may then transport this cut bunch of grapes having a weight approximately equal to the difference weight to a region proximate to the second robotic arm 114, where the at least one second end effector 122 holds and manipulates the cut vine / cut bunch of grapes and places or packs it into the container 142 on the second conveyor 130b that already has the previously cut bunch of grapes inside. In this way, the system 100 may be configured to pack containers 142 with grapes to reach a target weight or weight range. Additionally, or alternatively, in examples where there is only a first robotic arm 110, the controller 160 may be configured to control the at least one first end effector 120 of the first robotic arm 110 to cut the vine fruit to an approximation of the target weight, and then a human packer 150 packs the container 142 with the cut vine and tops up the container 142 with any additional fruit / produce as may be necessary. In some examples, the system 100 further comprises a flow wrapper or sealer (not shown) for sealing the containers 142 once they contain the correct target weight (or greater) of vine fruit. It will be understood that when it is described that the controller 160 is configured to determine the weight of the bunch of grapes it may be configured to do this from visual inspection alone. In some examples the controller 160 may be configured to determine the type / species of grapes and determine the weight and / or mass of the bunch of grapes based on the determined type / species and an estimated size (e.g., in terms of area and / or volume) of the bunch of grapes. The determination of the type / species may be performed by image recognition, for example using a pre-trained machine learning algorithm. The determination / estimation of the size may be performed, for example, using a point cloud analysis, semantic image segmentation and / or instance segmentation. As noted above, the controller 160 may be configured to obtain point cloud information and / or perform semantic image segmentation. In some examples, the controller 160 may be configured to perform both object detection and semantic segmentation to perform instance segmentation. Instance segmentation is challenging because it requires the correct detection of all objects in an image while also precisely segmenting each instance. It therefore combines elements from the classical computer vision tasks of object detection, where the goal is to classify individual objects and localize each using a bounding box, and semantic segmentation, where the goal is to classify each pixel into a fixed set of categories without differentiating object instances. The object detection may be performed using an Objection Detection API, such as TensorFlow® Object Detection API which is an open source framework built on top of TensorFlow® that makes it easy to construct, train and deploy object detection models. A convolutional neural network library may be used to provide an object detection model. The objection detection model may be run to provide real-time detection and localization of grapes to facilitate the manipulation of the grapes. Preferably, the model used for this task is a fully convolutional detector type model such as You only look once (YOLO) (for example as described in Redmon et al. “YOLO9000: Better, Faster, Stronger, 25 Dec 2016, https: / / arxiv.org / pdf / 1612.08242v1.pdf) and / or SSD: Single Shot MultiBox Detector (for example as described in Liu et al. “SSD: Single Shot MultiBox Detector” 29 Dec 2016, https: / / arxiv.org / pdf / 1512.02325.pdf). In addition to object detection, a model to predict segmentation masks on each Region of Interest (Rol) may be used to predict the pixels where the grapes are located. This may be fed into other algorithms such as the weight estimation algorithm and pick and place pipeline. The cameras 160 used may be RGB-D cameras, which are a specific type of depth sensing devices that work in association with a RGB camera, that are able to augment the conventional image with depth information (related with the distance to the sensor) in a per-pixel basis. The cameras 160 may provide multiple sensors that provide unique streams of information in addition to processed data formats such as a pointcloud stream. For example, the cameras 160 may be operable to have a colour image stream of RGB frames of up to 1920x1080 pixels in resolution at 30 frames per second, and a depth image stream (the ability to measure the distance (i.e. “range” or “depth”) to any given point in a scene and which distinguishes a depth camera from a conventional 2D camera. This stream provides the depth measurement of each pixel in the frame of the depth sensor. The field of view (FOV) of the depth sensor and colour sensor differ. The cameras 160 may also have an infrared image stream and a pointcloud stream. A pointcloud is a set of data points in space. The points represent a 3D shape or object. Each point has its set of X, Y and Z coordinates. A textured pointcloud has the extra layer of a texture added to the 3D information. In examples of the disclosure, the texture being used is the texture from a colour image sensor. This feature provides a data structure with detailed information to describe a 3-dimensional object. However, it will be understood that in some examples, for example for more accurate depth analysis, a LiDAR camera such as a RealSense™ LiDAR camera may be used additionally or alternatively, which may bring an additional level of precision and accuracy over its entire operational range. In the scenario of cutting the stems off the bunches of grapes a high level of accuracy is needed to make surgical-like cuts to the stems. These LiDAR cameras are able to provide an accuracy up to ~5 mm error rate. As noted above, the controller 160 is configured to determine the weight of a bunch of grapes using obtained image data. This may be performed as follows. First, an instance segmentation model may be run on image data obtained from the cameras 155, which may for example be colour depth cameras such as Realsense™ depth cameras. An Objects In Masks message may be output which represents a detected object and its region of interest. The following attributes are contained in the message: Header: Contains the timestamp and the coordinate frame this data is associated with. This would be the coordinate frame of the optical sensor of the camera Objects vector: This is an array of objects that have been detected. Contain the following attributes Object name: The name of the detected object. For example red_grapes Probability: The confidence of the detection output in percentage of object. Region of interest: Defines the x and y coordinate offsets and width and height of particular objects location in the camera frame Mask: Defines a mask within the region of interest where the pixels of the detected object is predicted to be. As noted above, the controller 160 may perform weight estimation to estimate the weight of grapes using data obtained from the cameras 155. This is achieved by two approaches. First, the weight may be estimated using the instance mask. The number of pixels in the mask may be correlated to the weight of the bunch using a number of samples. To be able to achieve this, linear regression may be used to model the relationship between a scalar value - weight, and one explanatory variable - number of pixels. Second, weight may be estimated from 3D Pointcloud data. This approach may use 3D pointcloud data. Some depth sensors may only obtain an unstructured point cloud. To get a triangle mesh from this unstructured input surface reconstruction may be performed. This may involve processing the 3D pointcloud data to filter out the mesh of the grapes using algorithms for generating 3D geometry, i.e., a triangle mesh in combination with plane segmentation methods and segmentation using the mask from the instance segmentation node, calculate the approximate volume of the filtered mesh containing points belonging to the grapes under review, and then calculate the weight of the bunch of grapes using an approximate density previously calculated through experimentation. The system may be configured to perform an image analysis on an image of an item to obtain an indication of one or more of the following properties: (i) a colour of the item, (ii) a size of the item, (iii) a type of the item, and / or (iv) the presence of a defect in the item (e.g. which would render the item unsuitable for packing). As to the colour of the item, the controller 160 may be configured to process the image to identify the region of the image in which the item is located. The system may be arranged so that the item is always in a similar region of the image (e.g. the timing of the operation of the camera 155 and / or conveyor 130 may be controlled so that the item is within a selected region for photographing by the camera). The controller 160 may be configured to determine the colour of the item based on pixel values for the image (e.g. a red value for the relevant pixels). Determining the colour may comprise identifying a range of colours within which the item lies. For example, there may be industry standardised colour charts for items of fruit and / or vegetables, such as tomato colour charts (e.g. British Tomato Growers Association colour chart). The controller 160 may be configured to process the image to determine to which colour group of the different colour groups the item belongs. This processing may comprise use of one or more calibrations, such as having a reference colour in the background of the image which has a known colour value against which the colour of the item may be calibrated. The controller 160 may control operation of the system based on the determined colour for the item. The controller 160 may determine, based on the colour, whether the item is suitable for packing. The controller 160 may determine, based on the colour, into which open container the item should be placed. For example, items may be grouped into a container 142 so that all of the items in that container are of a similar colour. In which case, each open container 142 may have an associated colour range (e.g. as stored in a data store of the controller). The controller 160 may be configured to identify the colour of an item, and then to place that item into an open container associated with that colour. As another example, items may be grouped into a container so that each container has items of a variety of different colours, such as according to prescribed criteria (e.g. white grapes and red grapes). In which case, each open container may have associated criteria for the colour of items it requires. The data store 164 may store an indication of these requirements, and each time an item is placed into a container, the data store 164 is updated to indicate that said container 142 has received an item of that colour. The controller 160 may be configured to obtain an indication of colour for an item, to determine which open container 142 requires an item of that colour, and to control the second robotic arm 114 to place the item into said open container 142 (e.g. into the furthest advanced open container requiring an item of that colour). As to the type of item, the controller 160 may be configured to process the image of the item to determine its type (e.g. what type or category of fruit or vegetable it is). The system may be operated to receive two or more types of fruit / vegetables and to sort and / or pack these concurrently. The controller 160 may be configured to process the obtained image of each item and determine therefrom what type of item it is. Determining what type of item it is may comprise determining that the item is one type of item out of a selected list of possible items to be processed. For example, there may be a prescribed number of possible items to be processed, and the image processing may identify which of said prescribed items the item in question most closely resembles. The controller 160 may be configured to control operation of the second robotic arm 114 based on the determined type of item. For example, open containers 142 may have one or more associated items, and the controller 160 is configured to determine into which open container 142 to place the item based on the type of item and open containers associated with that type of item. As to the presence of a defect in the item, the system may be configured to process the image of the item to determine if there are any visible defects with the item. For example, the controller 160 may identify one or more regions on the surface of the item which deviate from what would be expected (e.g. in shape or colour etc.). These may indicate the presence of a blemish or other deformity with the item. As with the examples above, the controller 160 may be configured to control operation of the second robotic arm 114 to place the item into an open container 142 selected based on whether or not there are any defects associated with the item. The controller 160 may be configured to infer additional properties for the item based on the obtained data for the item, and / or the controller 160 may be configured to determine additional properties for the item based on a combination of obtained data for said item. As one example, the controller 160 may be configured to determine an indication of ripeness for the item. The controller 160 may then sort items into open containers 142 based on their ripeness. For example, each open container may have an associated level of ripeness, and the controller 160 may allocate items to open containers based on the determined indication of ripeness of the item (e.g. so that each container receives items of the required ripeness for that container). The controller 160 may be configured to provide an indication of ripeness for each full container, which may be used to control subsequent use of said container (e.g. to provide a use by date etc.). The controller 160 may be configured to determine an indication of ripeness based on one or more obtain properties of the item. For example, an indication of ripeness may be obtained using the obtained colour for the item. In which case, sorting items based on their ripeness may comprise sorting items based on their colour. The controller 160 may be configured to determine ripeness by combining multiple pieces of obtained data for the item. For example, the controller 160 may obtain an indication of size for the item using image data, and this may be compared to pressure / displacement data obtained for the digits. The controller 160 may determine an indication of ripeness based on a comparison between: (i) the displacement at which the digits hold the item with pressure in the selected range, and (ii) the determined size of the item obtained using the image data. This combination may provide an indication of how firm the item is. In other words, the controller 160 may be configured to determine and indication of ripeness / firmness for an item based on a comparison between an estimated size for the item determined using image data and a measured size for the item when held by the digits. The controller 160 may control operation of the second robotic arm 114 to sort and / or pack the item based on its determined ripeness. Ripeness may be detected using a sensor configured to sense ethylene. The controller 160 may be configured to determine one or more properties about the item based on the obtained indication of the type of item and additional data. For example, the controller 160 may determine the ripeness based on the type of item (e.g. pear) and the colour of that item (e.g. how red / green the pear is). As another example, the controller 160 may determine what the item to be sorted is (e.g. a tomato) based on image analysis of that item. The controller 160 may determine how to sort the item based on colour based on the type of item, such as to identify selected colour ranges associated with that type of item, and to sort the item according to those selected colour ranges for that type of item. Fig. 2 shows an example process flow diagram for a robot-assisted method 200 of packing fresh produce, for example using the system of Fig. 1 described above. The method starts with the step of taking 201 produce, such as vine fruit, out from cold storage. A worker, such as human packer 150, then takes 203 out individual bunches and feeds them onto the start of the line, which may be the start of either conveyor 130a, 130b. The bunches of vine fruit may then be inspected 205 for quality control, for example to identify defects. This may be performed by a human packer 150, or by a computer-controlled system, such as the controller 160 and camera 155 described above with respect to Fig. 1. At step 207 any defects are identified, and if they are identified the vine fruit identified as having defects is flagged 209 (for example by controller 160) and presented to a snipping robot (which may be the at least one first end effector 120 of the first robotic arm 110) for removing any defects (for example, by cutting off any vine fruit identified as having a defect). However, in some examples the step of removing defects may be performed by a human packer 150. If no defects are identified, or if any defects have already been removed, the method then comprises estimating 211 the weight of the vine fruit, and the snipping robot (which may be the at least one first end effector 120 of the first robotic arm 110) may split the vine fruit to reach a target weight if needed. The cut vine is then placed 213 into a container (for example by the at least second end effector 122 of the second robotic arm 114, or by a human packer 150) and weighed (for example by the in-line weight scale 260). A determination 215 is then made as to whether the target weight has been reached 215. This determination 215 may be made by the controller 160 and / or by a human packer 150. If the target weight has not been reached, a human packer 150 may top up 271 the container with vine fruit, such as loose fruit, to reach or exceed the target weight. However, it will be understood that the at least second end effector 122 of the second robotic arm 114 may also be used to top-up the container. Finally, the packed container may then be passed 219 to a flow wrapper / sealer for sealing and distribution. In some examples, instead of using an in-line weight scale, the step of weighing 211 the vine fruit comprises receiving image data of the vine fruit and making a determination of the weight of the vine fruit based on the received image data. In some examples the method comprises making a determination as to where to cut the vine fruit based on the determined weight of the vine fruit, and controlling an end effector of a robotic arm to cut the vine fruit. The determination may be made by a controller, such as the controller 160 of Fig. 1. Inspecting 205 the vine fruit for defects and removing 209 any fruit identified as having a defect from the conveyor may comprises receiving image data of the vine fruit and applying a trained machine learning model to identify defects in the vine fruit and controlling an end effector of a robotic arm to remove the vine fruit from the conveyor. Controlling an end effector of a robotic arm to remove the vine fruit from the conveyor comprises controlling an end effector of a robotic arm to cut away any vine fruit identified as having a defect from the rest of the vine and controlling an end effector of a robotic arm to remove the cut away vine fruit from the conveyor. In some examples it could be the same end effector / robotic arm that does both the cutting and removing, or it could be two different end effectors / robotic arms that each perform the steps of cutting and removing. Determining whether the weight of the container holding the cut vine is at a target weight may comprise determining whether the weight of the container holding the cut vine is within a selected threshold weight range. Determining 215 whether the weight of the container holding the cut vine is at a selected target weight may comprise passing the container by a conveyor over an in-line weight scale, and wherein a second container is placed on a second weight scale adjacent to the container holding the cut vine on the in-line weight scale, and wherein a display provides an indication of the difference between the weight of the container holding the cut vine on the in-line weight scale and the lower limit of the selected threshold weight range, and wherein the difference displayed by the display reduces by the corresponding weight of fruit added to the second container. Topping up the container with vine fruit to reach the selected threshold weight may comprise adding the fruit added to the second container to the container holding the cut vine on the in-line weight scale. Fig. 3 shows another exemplary hybrid robotic item packing apparatus or system 300 adapted for packing fresh produce 332. The item packing apparatus or system 300 of Fig. 3 shares a number of features in common with the item packing apparatus or system 100 of Fig. 1, and like or similar reference numerals denote the same or similar features. In the example shown in Fig. 3 there are a pair of computer-controlled conveyors comprising first computer-controlled conveyor 330b and second computer-controlled conveyor 330a. There is a single robotic arm 314 having at least one end effector 322 for manipulating (e.g., grasping) fresh produce 332 (although it may have more end effectors, as shown in Fig. 6 and described in more detail below). In the example shown, both the first and second computer-controlled conveyors 330a, 330b are on the same side of the robotic arm 314, however it will be understood that in other examples the conveyors 330a, 330b may be either side (i.e., on opposing sides) of the robotic arm 314. Adjacent to the conveyors 130a, 130b is a camera 355 for providing image date of fresh produce on the conveyors 130a, 130b. Coupled to the robotic arm 314 is a controller 160 which may have the same or similar functionality to the controller 160 described above in relation to Fig. 1. In use, human packers 150 feed fresh produce (which may, for example, be loose fruit or vegetables, such as tomatoes) onto the first computer-controlled conveyor 330b, and empty containers 342 onto the second computer-controlled conveyor 330a. The controller 160 is configured to use image data (for example obtained from camera 355) to receive image data of the fresh produce and applying a trained machine learning model to identify defects in the fresh produce and control an end effector of the robotic arm 314 to move the fresh produce from the first computer-controlled conveyor 330b to the second computer-controlled conveyor 330a in the event that no defects are identified. In some examples, the controller 160 is configured to control the at least one end effector 322 of the first robotic arm 314 to pack the fresh produce directly into containers 342, or this may be performed by human packers 350. Additionally, or alternatively, the controller 160 may be configured to estimate the weight of fresh produce packed into the containers 142 and control the first robotic arm 314 to pack produce into the containers 142 to reach or exceed a desired target weight. As in the example described above in relation to Fig. 1, there is also an in-line weight scale 360, display 320 and second weight scale 370. The use of the in-line weight scale 360 may be a form of cross-check for use by human packers 350 to more accurately determine the weight of the filled container 342 to ensure that all containers 342 output from the system 300 exceed the desired target weight. As with the example of Fig. 1, the display 320 is configured to display an indication of the difference between the weight of the container 342 holding the fresh produce on the in-line weight scale 360 and the selected target weight, and wherein the difference displayed by the display reduces by the corresponding weight of fruit added to the second weight scale 370. This may advantageously make it very easy and efficient to accurately ensure that every container 342 contains at least the target weight of produce. In some examples the second weight scale 370 may comprise a second container for containing loose fruit for addition to the container 342 on the in-line weight scale 360. Fig. 4 shows an example robotic arm 614 for manipulating fresh produce such as fruit. The example robotic arm 614 may be used with any of the example systems described above. In the example shown in Fig. 4, the robotic arm 614 comprises three independently controllable end effectors 622a-c, although it will be understood that in other examples there may be more or less end effectors. In the example shown, each end effector 622a-c comprises a pair of opposing scoops coupled via a connecting portion 670, wherein each opposing scoop comprises pressure sensing means, although it will also be understood that in other examples each end effector may take a different form to fulfil a different function. The connecting portion 670 may be a common yoke, and may comprise means for routing signals to respective actuators in each end effector 622a-c. The pressure sensing means are be arranged to detect at least one of (i) the magnitude and (ii) the direction of pressure on each of the digits caused by the fresh produce. Each opposing scoop comprises a plurality of digits and wherein each digit comprises a pressure sensing means. Each digit comprises a curved fingertip comprising an extrusion configured to support the fresh produce. Each individual end effector 622a-c may be independently controllable in the sense that it may be independent controlled to grasp or manipulate respective produce, both in terms of the force applied in manipulation but also in terms of the degree of rotation of the end effector 622a-c relative to the item of produce. In other words, each individual end effector 622a-c may be individually rotatable. The robotic arm may further comprise a controller. The controller may be configured to independently control operation each pair of opposing scoops based on the detected magnitude and / or direction of pressure. The controller may be configured to determine whether each end effector is correctly holding an item of fresh produce based on an indication of whether the fresh produce is moving relative to the digits, and wherein the controller is configured to control each end effector to manipulate at least one of the digits in response to a determination that the end effector is not correctly holding the fresh produce. The controller may be configured to determine the approximate shape of the fresh produce based on the at least one of (i) the magnitude and (ii) the direction of pressure on each of the digits, and wherein the controller is configured to manipulate at least one of the scoops and / or each digit based on the determined approximate shape. As can also be seen in Fig. 4, each end effector 622a-c may be configured to scoop or collect a bunch of grapes. In the example shown in Fig. 4, the robotic arm 614 comprises three pairs of independently controllable end effectors 622a-c, each comprising a pair of opposing scoops. Each scoop comprises a plurality (in this example, three) finger portions or digits 680. Each finger portion or digit 480 may comprise a respective pressure sensing means, as will be described in more detail below. The pressure sensing means are arranged to detect the amount of force being applied during the grasp on the fruits to grasp, which is particularly important when dealing with irregular-shaped fruits such as grapes when it is important to understand how to grasp to avoid the fruits slipping from the end effector 622a-c. The scoop mechanism of the at least one second end effector 622a-c is designed for handling the fruits carefully without causing any damage. Because in the example shown there are six finger portions or digits 680, each will give different reaction forces at different contact regions. Based on the reaction force on each sensor on fingers, the approximate shape of the fruits can be determined (e.g. by the controller 160 as described above in relation to Figs. 1 and 3). The controller may be configured to apply the required force to hold the grapes without damaging fruits irrespective of their shape. The advantage of this scoop mechanism is the number of fingers, the length of the fingertips can be modified based on the fruit type and can give a very high range of picking grapes of width up to 160 mm. Each finger portion or digit 680 terminates in a curved fingertip. The fingertips are designed with an extrusion which will act as the support, and also makes sure that the fruits will not come out during their movement from picking position to placing position. In some examples the pressure sensing means may also be attached to the fingertips which can help to understand if there's any slip during their transfer from picking to placing position based on which we can regulate the speed of the robot and how quickly the system operates. Regulating the speed of robots may help to reduce damage and help reduce grapes falling out during the movement. The length of the extrusion forming each fingertip can be controlled based on the average reaction force needed for the bunches of grapes to be processed which will counter force for the weight of the grapes. The uniqueness of the design of the scoop is based on the realisation that not all the grapes of a bunch will be resting on a conveyor prior to them being handled, in fact there are actually very few grapes that will normally be resting on a surface such as the conveyor 130 when the grapes are placed on that surface. In some examples, the controller 160 may be configured, based on captured image data e.g., from cameras 155, to estimate the contact area based on the shape of the grapes. This estimation may be used by the controller 160 to determine to what degree each of the end effectors 622a-c may be closed while still ensuring that the grapes are being supported by the end effector and resting on the fingertips. It will be appreciated that the design of the scoop and the use of the fingertips means that the fingertips can get underneath the grapes which are just above the grapes resting on the conveyor 130. As soon as the grapes are picked from the conveyor 130, gravity will try to pull the grapes down but the reaction forces of the fingertips at the different locations will make sure the grapes being lifted are very stable. Once they are lifted up based on a determination as to whether the grapes are slipping or not (as will be described in more detail below), the controller 160 may be configured to further open or close each end effector 622a-c independently to get the most stable state inside the scoop to move the bunch of grapes from the conveyor 130 to a container 142. Embodiments of the present disclosure may utilise one or more machine learning elements to determine the suitability of an item for sorting and / or packing into an open container. The machine learning element may be configured to process an image of an item (e.g. as obtained using one or more of the cameras) and to provide an output indicative of the suitability of that item for sorting and / or packing. For example, the machine learning element may comprise a convolutional neural network. Training a machine learning element may comprise supervised training in which the element is provided with a plurality of items of input data, each of which being an image of an item having one or more associated properties. For example, when training for colour detection, each input item may be a photo of an item have an associated colour group out of a selection of available colour groups. The element may be trained using a large number of images. In each image, the item will have a known colour group associated therewith, against which the element’s predictions may be tested and updated accordingly. Other properties of input items in images will vary in the training data set. In particular, the training data set will include a plurality of items of different shapes and sizes, as well as items in different levels of lighting, at different angles to the camera, and with different surface shading, patterning and / or contouring. The element may therefore be trained to correctly identify colour in items to a high degree of reliability for the vast majority of items likely to pass through the system 100. As noted above, embodiments of the present disclosure may utilise a pressure sensing assembly comprising one or more pressure sensors to obtain a pressure measurement for contact between the digits of an end effector such as the at least one second end effector 122 and the item of fruit or vegetable, as described for example with reference to Fig. 6 which shows pressure sensing means 485. It is to be appreciated in the context of the present disclosure that any suitable pressure sensor may be used such as strain gauge-based pressure sensing or piezoelectric pressure sensing. Each digit may have a pressure sensor on its item-facing (and contacting) surface. The pressure sensor may be arranged to enable it to measure the pressure of the interaction of the respective digit holding the item. The system may be configured to determine that an end effector is correctly holding the item based on a direction of contact pressure. For example, if the spatial distribution of contact pressures indicates that the item has an even distribution of contact pressure with the digits, e.g. if all, or a majority, of the contact pressure measurements are within a selected range from one another, it may be determined that the item is held correctly. The system may be configured to determine that an end effector is correctly holding the item based on an indication of whether the item is moving relative to the digits. For example, if it is determined that the item is stationary, e.g. moving below a threshold speed, relative to the digits, then it may be determined that the item is held correctly. The pressure sensing assembly may comprise a plurality of different contact sensing locations on one or more of the digits. In other words, the pressure sensing assembly may comprise a plurality of spatially distributed pressure sensors. This distribution of pressure sensors may be configured to obtain a spatial distribution of contact pressure for contact between the digits of the end effector and an item held by the digits. This spatial distribution of contact pressure may comprise an indication of a magnitude of contact pressure for contact between at least one of the digits and the item held by the digits. The spatial distribution of contact may comprise a plurality of such magnitudes of contact pressure for contact at each of a plurality of different locations. Based on the plurality of different contact pressure sensing measurements, an indication of a direction of contact pressure for contact between the at least one item and the digits may be obtained. This indication of a direction of contact pressure may comprise an indication of how contact pressure varies across different regions of the surface of the item. This may also provide an indication of higher and lower pressure regions, and this may provide an indication of directionality for pressure between the digits and the item. For example, if two adjacent sensors have different contact pressures, this may indicate that one is gripping tighter than the other, e.g. because one of the sensors is on a digit which is in the wrong place, and / or the shape of the item may be such that the pressure distribution is not even for contact with said item. The spatial distribution of contact pressure may provide an indication of a direction in which one or more of the digits could move relative to the item to get a better grip on the item (e.g. so that the item is no longer moving, or contact pressure between the digits and the item is more evenly distributed about the items surface). The plurality of contact pressure sensing locations are configured to repeatedly (e.g. continuously) provide contact pressure sensing data. For example, each contact pressure sensing location may comprise a piezoresistive sensor configured to monitor a voltage drop associated with contact in that contact sensing region. The plurality of contact sensors are arranged to enable detection of movement of the item relative to the digits. For example, the contact sensing regions may be distributed about the one or more digits to provide an indication of pressure for the majority or all of the contact area of the digit. The system may be configured to monitor the spatial distribution of pressure, and how this changes over time, to determine if an item is moving. For example, if pressure in one region is decreasing (e.g. consistently decreasing, or has moved to a low value), it may be inferred that the item is moving away from that region (and thus there is no contact, i.e. contact pressure, between the digit and the item in that region). The system may be configured to determine that an item is not held correctly if, based on sensor signals from the pressure sensing assembly, it is determined that at least one of: (i) a magnitude of contact pressure (e.g. from one or more of the contact pressure sensing regions) has changed by more than a first amount; (ii) a magnitude of contact pressure (e.g. from one or more of the contact pressure sensing regions) is changing by more than a first rate of change; (iii) a direction of contact pressure has changed by more than a second amount; (iv) a direction of contact pressure is changing by more than a second rate of change; (v) a magnitude of contact pressure is changing while the indication of the direction of contact pressure remains constant; (vi) a direction of contact pressure is changing while the indication of the magnitude of contact pressure remains constant; (vii) the item is moving at more than a threshold speed relative to the digits of the end effector; and (viii) the item has moved more than a threshold distance relative to the digits of the end effector. Where the magnitude of contact pressure in a contact region is outside a selected range, the corresponding digit may be moved relative to the item so that the contact pressure is in the selected range. If the contact pressure between a digit and the item is too high, that digit may be moved away from the digit until the contact pressure is within the selected ranged, and vice versa. Where the direction of contact pressure indicates a non-uniform distribution of pressure on the item, one or more of the digits may be moved to balance the distribution of pressure to the item. If one or more of the contact pressure sensing regions indicate a contact pressure which is outside a selected range from contact pressures from other contact pressure sensing regions (e.g. too high or too low), the digit may move relative to the item to provide a more balanced spatial distribution of contact pressure. This may comprise moving the digit towards or away from the centre of the item, and / or moving the digit to a different location on the surface of the item. For example, the direction of contact pressure may suggest a higher contact pressure between one part of a digit than another part of that same digit. From this it may be inferred that the shape of the item is such that the digit is in the wrong place, e.g. the shape may be non-uniform. The digit may be controlled to move around the surface of the item to a location where the contact pressure distribution between that digit and the item becomes more uniform, e.g. so that any irregularities in shape are not impeding there being a consistent grip on the item (for example so that the item is being gripped in regions where its shape conforms more closely to the surface of the digits). Where the sensor signals from the pressure sensing assembly indicates that the item is moving relative to the digits, the digits may be controlled to stop this movement. For example, the digits may be controlled to grip the item more tightly to prevent movement. For example, the digits may be moved in a direction based on the direction of movement of the item, e.g. so that the digits are in a position to oppose this movement of the item. Detection of movement may be based on the magnitude of contact pressure in different regions and / or an indication of direction for the contact pressure. Embodiments of the present disclosure may utilise an electronic skin for the digit to provide pressure sensing. For example, each digit may have an electronic skin thereon. The electronic skin may cover the region of the digit which comes into contact with the item during use. The electronic skin may be made from a substrate comprising a base polymer layer, with a first intermediate polymer layer attached to the base polymer layer by a first adhesive layer. The first intermediate polymer layer may comprise a first intermediate polymer in which electron-rich groups are linked directly to one another (or e.g. these may optionally be substituted by C1-4 alkanediyl groups). The skin may further include a first conductive layer attached to the first intermediate polymer layer by a second adhesive layer or by multiple second adhesive layers between which a second intermediate polymer layer or a second conductive layer is disposed. Nanowires may be present on the first conductive layer. The nanowires may comprise a piezoelectric material. Said nanowires may be provided to enable piezoelectric pressure sensing. In the above described examples, a contact pressure sensing assembly is provided to obtain an indication of a contact pressure between a digit and an item held by that digit. Contact pressure sensors of the present disclosure may comprise piezoresistive sensors. However, it is to be appreciated in the context of the present disclosure that piezoelectric sensors may be used instead of, or in addition to, piezoresistive sensors. Although not shown in the Figs., an example of a contact pressure sensing assembly will now be described in which both piezoresistive and piezoelectric sensors are used. Such a contact pressure sensing assembly includes a plurality of piezoresistive sensors and a plurality of piezoelectric sensors. The sensors may be provided as part of an electronic skin. The electronic skin may be affixed to one or more end effectors (e.g. digits) coupled to a robotic arm. In this example, the one or more end effectors and robotic arm will be similar to those described above with reference to Fig. 1. That is, there may be a plurality of end effectors in the form of digits. The digits may be movable relative to one another to hold an item therebetween. The electronic skin is arranged to be affixed to said digits, e.g. it may be adhered (or affixed in another way) to the digits to cover a majority (if not all) of an item contacting portion of the digits. For example, the electronic skin may be configured to cover the digits so that any contact between the digits and the item will include contact between the electronic skin and the item. The piezoresistive and piezoelectric sensors are spatially distributed about the electronic skin. The sensors may therefore be spatially distributed about the digits, so that each digit comprises one or more piezoresistive sensor, and one or more piezoelectric sensor. Typically, each digit will comprise a plurality of each type of the sensor, e.g. so that the sensors may obtain measurements for a plurality of different regions on the sensor (so that contact pressure sensing may be provided for the majority of the surface of the digits which contact items). For example, the contact pressure sensing assembly may be configured to obtain a plurality of different piezoelectric and piezoresistive sensor measurements for each digit (e.g. for different regions of each said digit). Each of the sensors is connected to a controller such as controller 160 to enable an indication of a value for one or more parameters of the piezoresistive / piezoelectric signals to be obtained. The controller 160 is configured to control operation of the robotic arm and digits in the manner described above. That is, the controller may obtain (e.g. determine) an indication of properties such as: a magnitude of contact pressure, a direction of contact pressure and / or whether the item is moving relative to the digits, and to control operation of the arm and digits based on such indications. For example, the contract pressure sensing assembly may be configured to monitor parameters of a voltage of the piezoresistive signals, such as a voltage drop associated therewith, to obtain an indication of a contact pressure with the item. Using the plurality of piezoresistive sensors, the system may be configured to obtain a spatial distribution of contact pressures between the digits and the item. Monitoring the piezoresistive signals may enable real-time pressure monitoring to occur and monitoring the piezoresistive signals may enable a spatial distribution of pressure for the item to be obtained. The contact pressure sensing assembly may be configured to monitor parameters of a voltage of the piezoelectric signals to obtain an indication of a contact pressure with the item. The system may be configured to monitor any change in voltage for the piezoelectric signal. For example, the system may be configured to monitor any voltage extrema (e.g. maxima or minima for voltage), and / or any change in voltage (e.g. change by more than a threshold amount and / or change at more than a threshold rate). The system may be configured to determine at least one of: (i) a magnitude of any extrema, (ii) a rate of change in the voltage signal, (iii) an absolute value for change in the voltage signal, (iv) a phase associated with an extrema (e.g. peak or trough) in the voltage signal. The system may be configured to compare different piezoelectric signals to identify any differences between such signals. For example, the system may be configured to compare a piezoelectric signal from a piezoelectric sensor on a first digit with a piezoelectric signal from a piezo electric signal on a second digit, or with a piezoelectric signal from a different piezoelectric sensor on the first digit. The system may be configured to identify one or more regions of interest in the piezoelectric signals. For example, these regions of interest will typically comprise one or more extrema (peaks or troughs), as these may provide an indication of a pressure value. The system may also be configured to monitor piezoelectric signals over time, as changes in the extrema (e.g. changes in their value, or changes in their position) may provide an indication of whether the item is correctly held. For example, the system may be configured to determine that an item is moving relative to the digits in the event that there is a change in one or more voltage extrema for the piezoelectric signals (e.g. in a given time window). The system may be configured to monitor a position of extrema in the voltage signals from the piezoelectric sensors. The system may be configured to compare the positions for extrema in voltage signals from different sensors to determine both an indication that the item is moving, and also optionally a direction in which the item is moving. For example, the system may be configured to determine a direction of movement for the item based on a difference in phase between the different voltage signals. For example, the system may be configured to determine a direction of movement based on a difference in argument (e.g. sign - positive or negative) for the voltage extrema. For example, a negative sign may indicate movement away and positive movement towards. The system may be configured to use such piezoelectric sensing to determine an indication of one or more properties of the contact pressure between the digits and the item, such as an indication of a magnitude and / or direction of that pressure, as well as an indication of whether the item is moving relative to the digits. Additionally, the system may be configured to utilise the one or more piezoresistive sensors in combination with said piezoelectric sensors. It is to be appreciated in the context of the present disclosure that the piezoelectric sensors may provide complementary contact pressure data to that obtained using the piezoresistive sensors. For example, piezoelectric sensors may have a quicker response time, e.g. they may be more time-sensitive to pressure changes. As such, an indication of a change in pressure may first be observed with reference to the piezoelectric signals. It will be appreciated that piezoelectric sensors measure a charge brought about by a force applied to the piezoelectric material. This charge may leak over time (e.g. due to imperfect insulation / internal resistances of sensors and other electrical components connected thereto etc.). However, pi ezo resistive signals may be maintained overtime. The system may therefore be configured to determine an ongoing indication of contact pressure for the item using piezoresistive sensors. As such, an indication of a magnitude of pressure at any given moment may be obtained using the piezoresistive sensors. The system may be configured to monitor the piezoelectric signals to identify any changes, e.g. which indicate a change in pressure / movement of the item. The system may be configured so that, in the event that a change in pressure / movement of the item is detected in one or more piezoelectric signals, the piezoresistive signals corresponding to a similar region / digit to those piezoelectric signals will then be monitored to determine a magnitude of the pressure brought about by this change / movement. The robotic arm / end effectors may therefore be controlled based on read outs from both sensors. For example, the end effectors may be initially controlled based on the piezoelectric signal (e.g. to increase / decrease the tightness of their grip - the pressure they apply). The system may then monitor the contact pressure for the relevant region of the item using the piezoresistive sensors to ensure that the contact pressure remains within a selected range. This may enable the system to be more responsive to changes in grip while still ensuring that the grip of the item is not too tight or loose. The system may be configured to determine how to change its grip (e.g. in response to a change indicated in one or more piezoelectric signals) based on a comparison between different piezoelectric signals. For example, in the event that it is determined that the item is moving in a first direction, the system may be controlled so that one or more of the digits moves position, wherein that movement is controlled based on the determined first direction. For example, a digit may be moved into a position where it counters that movement, e.g. to ensure that the item is held in a stationary manner between the digits. It is to be appreciated in the context of the present disclosure that the above-described examples of contact pressure sensing assemblies are not to be considered limiting. Instead, this description provides exemplary functionality of the system for controlling the operation of the end effectors / robotic arm when placing items into item containers. As will be appreciated by the skilled reader in the context of the present disclosure, each of the examples described herein may be implemented in a variety of different ways. Any feature of any aspects of the disclosure may be combined with any of the other aspects of the disclosure. For example, method aspects may be combined with apparatus aspects, and features described with reference to the operation of particular elements of apparatus may be provided in methods which do not use those particular types of apparatus. In addition, each of the features of each of the examples is intended to be separable from the features which it is described in combination with, unless it is expressly stated that some other feature is essential to its operation. Each of these separable features may of course be combined with any of the other features of the examples in which it is described, or with any of the other features or combination of features of any of the other examples described herein. Furthermore, equivalents and modifications not described above may also be employed without departing from the invention. Certain features of the methods described herein may be implemented in hardware, and one or more functions of the apparatus may be implemented in method steps. It will also be appreciated in the context of the present disclosure that the methods described herein need not be performed in the order in which they are described, nor necessarily in the order in which they are depicted in the drawings. Accordingly, aspects of the disclosure which are described with reference to products or apparatus are also intended to be implemented as methods and vice versa. The methods described herein may be implemented in computer programs, or in hardware or in any combination thereof. Computer programs include software, middleware, firmware, and any combination thereof. Such programs may be provided as signals or network messages and may be recorded on computer readable media such as tangible computer readable media which may store the computer programs in non-transitory form. Hardware includes computers, handheld devices, programmable processors, general purpose processors, application specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), and arrays of logic gates. Controllers described herein may be provided by any control apparatus such as a general-purpose processor configured with a computer program product configured to program the processor to operate according to any one of the methods described herein. Machine learning elements described herein may be provided in a number of forms. This may include computer program instructions configured to program a computer processor to operate according to the instructions. The instructions may comprise a finalised machine learning element such that a user may not be able to alter or identify properties associated with the element, or the instructions may be arranged so that they can be overwritten so that continued use of the machine learning element may enable the code to be updated (so as to further develop the element). As will be appreciated in the context of the present disclosure, the specific nature of the machine learning element is not to be considered limiting, and this may vary depending on the nature of data to be processed. Any suitable system for the provision of a machine learning element may be utilised. The machine learning element may comprise a neural network. A neural network may include a plurality of layers of neurons, where each neuron is configured to process input data to provide output data. It will be appreciated that any suitable process may be provided by any given neuron, and these may vary depending on the type of input data. Each layer of the network may include a plurality of neurons. The output of each neuron in one layer may be provided as an input to one or more (e.g. all) of the neurons in the subsequent layer. Each neuron may have an associated set of weightings which provide a respective weighting to each stream of input data provided to that neuron. Each path from a neuron to a neuron may be referred to as ‘an edge’. Weightings may be stored at each neuron, and / or at each edge. Such a neural network may have at least two variables which can be modified to provide improved processing of data. Firstly, a neuron’s functionality may be selected or updated. Systems and methods of neural architecture search may be used to identify suitable functionalities for neurons in a network. Secondly, the weightings in the network may be updated, such as to alter priorities of different streams of input and output data throughout the network. The machine learning element may be trained. For example, training the machine learning element may comprise updating the weightings. A plurality of methods may be used to determine how to update the weightings. For example, supervised learning methods may be used in which the element is operated on an input data for which there is a known correct output. That input / output is provided to the machine learning element after it has operated on the data to enable the machine learning element to update itself (e.g. modify its weightings). This may be performed using methods such as back propagation. By repeating this process a large number of times, the element may become trained so that it is adapted to process the relevant data and provide a relevant output. Other examples for training the machine learning element include use of reinforcement learning, where one or more rewards are defined to enable elements to be trained by identifying and utilising a balance between explorative and exploitative behaviour. For example, such methods may make use of bandit algorithms. As another example, unsupervised learning may be utilised to train the machine learning element. Unsupervised learning methods may make use of principal component and / or cluster analysis to attempt to infer probability distributions for an output based on characteristics of the input data (e.g. which may be associated with known / identified outputs). The specifics of the machine learning element, and how it is trained, may vary, such as to account for the type of input data to be processed. It will be appreciated that different types of machine learning element may be suited to different tasks or for processing different types of data. It will also be appreciated that data may be cast into different forms to make use of different machine learning elements. For example, a standard neural network could be used for processing numerical input data, such as empirical values from obtained measurements. For processing images, convolutional neural networks may be used, which include one or more convolution layers. Numerical data may be cast into image form, such as by using a form of rasterization which represents numerical data in image form. A standard file format may be used to which the resulting image must adhere, and a convolutional neural network may then be trained (and used) to analyse images which represent the measurements (rather than values for the measurements themselves). Consequently, the specific type of machine learning element should not be considered limiting. The machine learning element may be any element which is adapted to process a specific type of input data to provide a desired form of output data (e.g. any element which has been trained / refined to provide improved performance at its designated task). It will also be appreciated by the skilled person that while embodiments have been described in the context of packing and manipulating fresh produce such as bunches of grapes, embodiments of the disclosure may equally be applied to packing and manipulating other fruits and vegetables, in particular non-linear fruits and vegetables, for example vine fruits and vegetables such as bunches of bananas, tomatoes on the vine, blueberries and so on. Other examples and variations of the disclosure will be apparent to the skilled addressee in the context of the present disclosure. It will be appreciated from the discussion above that the embodiments shown in the Figures are merely exemplary, and include features which may be generalised, removed or replaced as described herein and as set out in the claims. In the context of the present disclosure other examples and variations of the apparatus and methods described herein will be apparent to a person of skill in the art.

Claims

1. A robot-assisted method of sorting and / or packing vine fruit into containers by a hybrid robotic and human system, the method comprising:placing vine fruit onto a computer-controlled conveyor;inspecting the vine fruit for defects;removing any fruit identified as having a defect from the conveyor;weighing the vine fruit;in the event that the weight of the vine fruit is above a selected threshold, cutting the vine fruit using a robotic end effector mounted on a robotic arm to produce a cut vine having an estimated weight below the selected threshold;placing the cut vine into a container;checking the weight of the container holding the cut vine;determining whether the weight of the container holding the cut vine is within a selected threshold weight range; andin the event that the determined weight is outside the selected threshold weight range, topping up the container with vine fruit to reach the selected threshold weight range.

2. The robot-assisted method of claim 1 wherein placing the cut vine into a container comprises using a robotic end effector mounted on a robotic arm to place the cut vine into the container.

3. The robot-assisted method of claim 1 or 2 wherein weighing the vine fruit comprises receiving image data of the vine fruit and making a determination of the weight of the vine fruit based on the received image data;4. The robot-assisted method of any of the previous claims comprising making a determination as to where to cut the vine fruit based on the determined weight of the vine fruit, and controlling an end effector of a robotic arm to cut the vine fruit.

5. The robot-assisted method of any of the previous claims wherein inspecting the vine fruit for defects and removing any fruit identified as having a defect from theconveyor comprises receiving image data of the vine fruit and applying a trained machine learning model to identify defects in the vine fruit and controlling an end effector of a robotic arm to remove the vine fruit from the conveyor.

6. The robot-assisted method of claim 5 wherein controlling an end effector of a robotic arm to remove the vine fruit from the conveyor comprises controlling an end effector of a robotic arm to cut away any vine fruit identified as having a defect from the rest of the vine, and controlling an end effector of a robotic arm to remove the cut away vine fruit from the conveyor.

7. The robot-assisted method of any of the previous claims wherein determining whether the weight of the container holding the cut vine is within a selected threshold weight range comprises passing the container by the conveyor over an in-line weight scale.

8. The robot-assisted method of any of the previous claims wherein the step of topping up the container with vine fruit to reach the selected threshold weight in the event that the determined weight is outside the selected threshold weight range is performed by a human.

9. The robot-assisted method of any of the previous claims wherein determining whether the weight of the container holding the cut vine is within a selected threshold weight range comprises passing the container by the conveyor over an in-line weight scale, and wherein a second container is placed on a second weight scale adjacent to the container holding the cut vine on the in-line weight scale, and wherein a display provides an indication of the difference between the weight of the container holding the cut vine on the in-line weight scale and the lower limit of the selected threshold weight range, and wherein the difference displayed by the display reduces by the corresponding weight of fruit added to the second container, andwherein topping up the container with vine fruit to reach the selected threshold weight comprises adding the fruit added to the second container to the container holding the cut vine on the in-line weight scale.

10. The robot-assisted method of any of the previous claims wherein the step of placing vine fruit onto a computer-controlled conveyor is performed by a human.

11. The robot-assisted method of any of the previous claims further comprising feeding the container containing the vine fruit into a flow wrapper or sealer.

12. The robot-assisted method of any of the previous claims wherein placing the cut vine into a container using a robotic end effector mounted on a robotic arm comprises placing the cut vine into a container on a second computer-controlled conveyor using a robotic end effector mounted on a robotic arm.

13. A hybrid system for sorting and / or packing vine fruit into containers, the hybrid system comprising:a first robotic arm comprising at least one first end effector for cutting grapes from a bunch;at least one camera for providing image data of vine fruit;a first computer-controlled conveyor;a first in-line weight scale; anda controller configured to receive the image data of the vine fruit and to make a determination of the weight of the vine fruit based on the received image data;wherein the controller is configured to control the at least one first end effector of a robotic arm to cut the vine fruit based on the determined weight of the vine fruit; andwherein the controller is configured to control the first computer-controlled conveyor to move the container onto the first in-line weight scale.

14. The hybrid system of claim 13 wherein the controller is configured to use image data to receive image data of the vine fruit and applying a trained machine learning model to identify defects in the vine fruit and control an end effector of a robotic arm to remove the vine fruit from the first computer-controlled conveyor.

15. The hybrid system of claim 13 or 14 wherein the controller is configured to control the at least one first end effector of the first robotic arm to hold and manipulate the cut vine fruit into a container.

16. The hybrid system of claim 13 or 14 wherein the first robotic arm comprises a manipulation end effector, and wherein the controller is configured to control the manipulation end effector of the first robotic arm to hold and manipulate the cut vine fruit into a container.

17. The hybrid system of claim 13 or 14 further comprising a second robotic arm comprising at least one manipulation end effector for holding and manipulating a bunch of grapes for packing into a container; and wherein the controller is configured to control the at least one end effector of the second robotic arm to hold and manipulate the cut vine fruit into a container.

18. The hybrid system of claim 16 or 17 wherein the at least one manipulation end effector comprises a pressure sensing assembly for providing an indication of a contact pressure and wherein the controller is configured to control the at least one second end effector of the second robotic arm to hold and manipulate the cut vine fruit into a container based on an indication of the contact pressure.

19. The hybrid system of claim 18 wherein the controller is configured to receive sensor signals from the pressure sensing assembly of the second robotic arm to obtain an indication of:(iii) a magnitude of contact pressure for contact between the end effector and the item held by the end effector; and(iv) a direction of contact pressure for contact between the end effector and the item held by the end effector; andwherein the controller is configured to determine whether the end effector is correctly holding the item based on the indication of the magnitude of the contact pressure and the indication of the direction of contact pressure.

20. The hybrid system of any of claims 13 to 19 wherein the controller is configured to perform semantic image segmentation on the received image data to determine the location of stems or stalks relative to the fruit, and wherein the controller is configured to use the determined location of stems or stalks to control the at least one end effector ofthe first robotic arm to cut the vine fruit at a stem or stalk.

21. The hybrid system of any of claims 13 to 20 wherein the controller is configured to determine an orientation to hold the vine fruit in based on the received image data.

22. The hybrid system of any of claims 13 to 21 further comprising a second computer-controlled conveyor wherein the controller is configured to place the cut vine into a container using a robotic end effector mounted on a robotic arm into a container on the second computer-controlled conveyor.

23. The hybrid system of any of claims 13 to 22 further comprising:a second computer-controlled conveyor on an opposite side of the robotic arm to the first computer-controlled conveyor;a second in-line weight scale in line with the second computer-controlled conveyor; andwherein the controller is configured to receive the image data of the vine fruit on the second computer-controlled conveyor and to make a determination of the weight of the vine fruit based on the received image data;wherein the controller is configured to control the at least one first end effector of a robotic arm to cut the vine fruit from the second computer-controlled conveyor based on the determined weight of the vine fruit; andwherein the controller is configured to control the second computer-controlled conveyor to move the container onto the second in-line weight scale.

24. A hybrid system for placing fresh produce such as fruit into containers, the system comprising:at least one robotic arm comprising at least one first end effector arranged to manipulate the fresh produce and place the fresh produce into containers;at least one camera for providing image data of the fresh produce;a computer-controlled conveyor arranged to convey containers;a first weigh scale in line with the computer controller conveyor and arranged to receive and weigh a container from the computer-controlled conveyor;a display for displaying the weight of the container received from the computer-controlled conveyor.

25. The hybrid system of claim 24, further comprising:a second weigh scale adjacent to the first weigh scale; andwherein the display is configured to display the difference the difference between a predetermined target weight and the sum of the weight as weighed by the first weigh scale and the weight as weighed by the second weigh scale.

26. A robot-assisted method for placing a target weight of fresh produce such as fruit into containers, the method comprising:manipulating fresh produce using an end effector of a robotic arm and placing the fresh produce into a container on a computer-controlled conveyor;conveying the container containing the fresh produce onto a first weigh scale in line with the computer-controlled conveyor;displaying the weight of the container on the first weigh scale; andtopping up the container with loose fruit if the displayed weight is less than a selected threshold weight.

27. The robot-assisted method of claim further comprising:placing a second container a second weight scale adjacent to the first weigh scale, anddisplaying the difference between a predetermined target weight and the sum of the weight as weighed by the first weigh scale and the weight as weighed by the second weigh scale, and:wherein topping up the container with loose fruit to reach the predetermined target weight comprises adding loose fruit to the second container until the displayed weight is zero or less, and adding the loose fruit added to the second container to the first container.

28. A hybrid system for sorting and / or packing fresh produce such as fruit into containers, the hybrid system comprising:a robotic arm comprising at least one first end effector for manipulating fresh produce;at least one camera for providing image data of the fresh produce;a first computer-controlled conveyor and a second computer-controlled conveyor;a controller configured to use image data to receive image data of the fresh produce and applying a trained machine learning model to identify defects in the fresh produce and control an end effector of the robotic arm to move the fresh produce from the first computer-controlled conveyor to the second computer-controlled conveyor in the event that no defects are identified.

29. A hybrid system for sorting and / or packing fresh produce such as fruit into containers, the hybrid system comprising:a robotic arm comprising at least one first end effector for manipulating fresh produce;at least one camera for providing image data of the fresh produce;a first computer-controlled conveyor and a second computer-controlled conveyor arranged on a first side of the robotic arm, and a third computer-controlled conveyor and a fourth computer-controlled conveyor arranged on a second side of the robotic arm;a controller configured to receive image data of fresh produce on the first computer-controlled conveyor, second computer-controlled conveyor, third computer-controlled conveyor and fourth computer-controlled conveyor,wherein the controller is configured to control the at least one first end effector to alternately manipulate the fresh produce from each of the first computer-controlled conveyor, second computer-controlled conveyor, third computer-controlled conveyor and fourth computer-controlled conveyor and place the fresh produce in containers.

30. The hybrid system of claim 29 wherein fresh produce are arranged to be fed onto the first and third computer-controlled conveyors and containers are arranged to be fed onto the second and fourth computer-controlled conveyors, and wherein the controller is configured to control the at least one first end effector to manipulate the fresh produce from the first and third computer-controlled conveyors into containers on the second and fourth computer-controlled conveyors respectively.

31. The hybrid system of claim 29 or 30 wherein the controller is configured to assist humans with the manipulation of fresh produce into the containers whereby the controlleralternately manipulates fresh produce into containers with humans who manually manipulate fresh produce into containers.

32. The hybrid system of any of claims 29 to 31 further comprising first and second inline weight scales in line with the first and second computer-controlled conveyors;wherein the controller is configured to control the first and second computer-controlled conveyors to move the containers onto the first and second in-line weight scales.

33. The hybrid system of claim 32 further comprising a display for displaying the weight of fresh produce in the container on each of the first and second in-line weight scales.

34. A robot assisted method of placing fresh produce such as fruit into containers, the method comprising:feeding fresh produce onto second and fourth computer-controlled conveyors;feeding empty containers onto first and second computer-controlled conveyors;alternating between a human and a robotic arm moving the fresh produce from the second and fourth computer-controlled conveyors into the containers on the first and third computer-controlled conveyors;35. The robot assisted method of claim 34 further comprising feeding the packed containers containing fresh produce onto a corresponding weight scale, and adding loose fruit to a container if the weight scale indicates that the weight of fresh produce in the container is less than a selected threshold target weight.

36. The robot assisted method of claim 35 wherein the addition of loose fruit is performed by a human.

37. The robot assisted method of claim 35 wherein the addition of loose fruit is performed by the robotic arm.

38. A robotic arm for manipulating fresh produce such as fruit, the robotic armcomprising a plurality of independently controllable end effectors, wherein each end effector comprises:a pair of opposing scoops coupled via a connecting portion, wherein each opposing scoop comprises pressure sensing means.

39. The robotic arm of claim 38 wherein the pressure sensing means are arranged to detect at least one of (i) the magnitude and (ii) the direction of pressure on each of the digits caused by the fresh produce.

40. The robotic arm of claim 38 or 39 wherein each opposing scoop comprises a plurality of digits and wherein each digit comprises a pressure sensing means.

41. The robotic arm of claim 40 wherein each digit comprises a curved fingertip comprising an extrusion configured to support the fresh produce.

42. The robotic arm of any of claims 38 to 41 further comprising a controller, and wherein the controller is configured to control operation of at least one of the pair of opposing scoops based on the detected magnitude and / or direction of pressure.

43. The robotic arm of any of claims 39 to 42 wherein the controller is configured to determine whether an end effector is correctly holding an item of fresh produce based on an indication of whether the fresh produce is moving relative to the digits, and wherein the controller is configured to control the end effector to manipulate at least one of the digits in response to a determination that the end effector is not correctly holding the fresh produce.

44. The robotic arm of claim 40 or any claim as dependent thereon, wherein the controller is configured to determine the approximate shape of the fresh produce based on the at least one of (i) the magnitude and (ii) the direction of pressure on each of the digits, and wherein the controller is configured to manipulate at least one of the scoops and / or each digit based on the determined approximate shape.

Citation Information

Patent Citations

  • System and method for sorting and / or packing items

    GB2600504A