Germany
Asked — Edited

Digital Clone Rover Roli

maybe someone can use it....

can be used with the standard project of Roli, just create an EZ-Script and run it:

$go=true
repeatwhile($go) 
$strSend = "D9@" + GetServo(d9) + ";D10@" + GetServo(d10) 
$strSend = $strSend + ";D19@" + GetServo(d19) + ";D18@" + GetServo(d18) + ";D17@" + GetServo(d17) + ";D16@" + GetServo(d16)
$strSend = $strSend + ";D15@" + GetServo(d15) + ";D14@" + GetServo(d14) + ";D13@" + GetServo(d13) + ";D12@" + GetServo(d12)
SendUDP("127.0.0.1", 11000, $strSend)
Sleep(100)
endrepeatwhile

Here is the program for download: digitalCloneRoverRoli.zip and here the Unity project data to tinker around with yourself: Unity.zip

Have fun ...

24.07.22 Update in Post #17 -  Version with moving Rover ....

.


ARC Pro

Upgrade to ARC Pro

Your robot can be more than a simple automated machine with the power of ARC Pro!

PRO
Germany
#9  

how do I get the values from the HBridge? Is there something in EZ-Script, I only found GetPWM (digitalPort), how can I determine whether and in which direction the rover is driving ....

PRO
Synthiam
#10   — Edited

There’s a global variable for the current direction I believe. It doesn’t matter what type of Movement Panel is used (ie hbridge). The Movement Panel controls the movement service, which has speed and movement values.

PRO
Germany
#11  

ahh, very good, I can start with that. Sorry if I ask so much but I still lack a lot of knowledge about ARC ....

PRO
Synthiam
#12  

I don’t mind. It’s worthwhile when people ask questions and I get to see the results

PRO
Germany
#14   — Edited

is there a possibility to use the HBridge WITHOUT a connection to the EZB? It should change the $direction value in offline mode...

Edit Variable is set but there is always an error message ....

Version: 2022.06.19.00

System.Exception: Capability 'Read/Write Digital I/O Ports' is not supported on this EZB device.
   bei EZ_B.Firmware.FirmwareCls.CapabilityRequired(CapabilityCls cap)
   bei EZ_B.Digital.vrRX0N06Fl06JYjCF4W(Object , Object )
   bei EZ_B.Digital.SetDigitalPort(DigitalItem[] items)
   bei ARC.UCForms.FormHBridgePWMMovementPanel.MbDGdOsUXjKr4vAPJpUI(Object , Object )
   bei ARC.UCForms.FormHBridgePWMMovementPanel.z74iEXqo4bp(MovementDirectionEnum  , Byte  , Byte  )
   bei ARC.MovementManager.DL0Xif6reitYHi2tNXFf(Object , MovementDirectionEnum direction, Byte speedLeft, Byte speedRight)
   bei ARC.MovementManager.GoForward(Byte speedLeft, Byte speedRight)
   bei ARC.MovementManager.GoForward()
   bei ARC.UCForms.FormHBridgePWMMovementPanel.Oby20ssUTN1FImrlcEEP(Object )
   bei ARC.UCForms.FormHBridgePWMMovementPanel.forward(Object sender, EventArgs e)
   bei System.Windows.Forms.Control.OnClick(EventArgs e)
   bei System.Windows.Forms.Button.OnClick(EventArgs e)
   bei System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
   bei System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   bei System.Windows.Forms.Control.WndProc(Message& m)
   bei System.Windows.Forms.ButtonBase.WndProc(Message& m)
   bei System.Windows.Forms.Button.WndProc(Message& m)
   bei System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   bei System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   bei System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

.

PRO
Synthiam
#15  

Just remove the hbridge Movement Panel robot skill. It isn’t needed if you’re not using digital ports. All you’re doing is moving the direction. A Movement Panel is only for connecting movements to hardware.

PRO
Germany
#16  

I need something to move the robot in ARC - don't I? It works with the servo Movement Panel, there is no error if the ECB is not connected....