You could use a list in conjunction with process flow for this.
Create an item list in the toolbox. In the "Send to Port" option of the Queue, choose to push the item to that list.
Then you can build a simple process flow to control the transporter. In the attached example, it first pulls a single item. Then the token moves to a second "Pull from List" activity and pulls a number of additional items, according to the cases defined in the "Request Number" and "Require Number" fields. "Request" is the number of items that will be pulled if that many are available. "Require" is the minimum amount, that has to be pulled, before the token is send to the next activity.
To only pull items of the same type as the first one, you can use a sql query (see attached model). The second "Pull from List" activity is also set to "Assign in Front of". This means all pulled items will be available in an array label of the chosen name.
After pulling the items the transporter is told to load them and unload them in the rack.
transporter_1.fsm