Can you take a picture of how you have it wired?

On Sun, Mar 10, 2019 at 11:33 PM Mala Dies <[email protected]> wrote:

> Hello Once More,
>
> Just for reference, the web application comes up w/ me enabling a
> .service file on the BBBW. The website has worked w/ other BBBW related
> flask-motor-html pages and motor movement.
>
> ...
>
> Another factor is this...the bot, this four motor machine, moves w/ one
> board w/ the same software but not the other BBBW w/ the same software.
>
> Seth
>
> P.S. If you have any ideas, please do not hesitate to ask any questions
> for more info. and/or give advice. I have this date coming up and I want to
> have this bot working for this specific date, e.g. w/ the BBBW, MotorCape,
> and four motors.
>
> On Sunday, March 10, 2019 at 10:18:29 PM UTC-5, Mala Dies wrote:
>>
>> Hello,
>>
>> I have a BBBW and MotorCape. I have tested some motors on each of the
>> screw connectors on the MotorCape. Success! Anyway, when controlling four
>> motors at once, I have come across some issues.
>>
>> ...
>>
>> My issue pertains to a Flask application w/ HTML to control the four
>> motors via a website online.
>>
>> Here is some software to test out if you have the MotorCape:
>>
>> #!/usr/bin/python3
>>
>> # w/ help from #beagle on Freenode
>>
>> from flask import Flask, render_template
>> import Adafruit_BBIO.GPIO as GPIO
>> import Adafruit_BBIO.PWM as PWM
>> import time
>>
>> class Motor:
>>    def __init__(self, dir_pin, pwm_pin, pwm_freq):
>>        self.dir_pin = dir_pin
>>        self.pwm_pin = pwm_pin
>>        self.value = 0
>>
>>         PWM.start(pwm_pin, 0, pwm_freq)
>>        GPIO.setup(dir_pin, GPIO.OUT)
>>
>>     def set(self, value):
>>        assert -100 <= value <= 100
>>        if (value < 0) != (self.value < 0):
>>            # changing direction
>>            PWM.set_duty_cycle(self.pwm_pin, 0)
>>            GPIO.output(self.dir_pin, value < 0)
>>        PWM.set_duty_cycle(self.pwm_pin, abs(value))
>>        self.value = value
>>
>> motor1 = Motor(dir_pin="P8_18", pwm_pin="P9_16", pwm_freq=2000)
>> #motor2 = Motor(dir_pin="P8_16", pwm_pin="P9_14", pwm_freq=2000)
>> #motor3 = Motor(dir_pin="P8_14", pwm_pin="P8_13", pwm_freq=2000)
>> motor4 = Motor(dir_pin="P8_26", pwm_pin="P8_19", pwm_freq=2000)
>>
>> app = Flask(__name__)
>> @app.route("/")
>> @app.route("/<state>")
>>
>> def updates(state=None):
>>    if state == "F":
>>        motor1.set(100)
>>        motor4.set(100)
>>        time.sleep(.2)
>>    if state == "L":
>>        motor1.set(0)
>>        motor4.set(85)
>>        time.sleep(.2)
>>    if state == "R":
>>        motor1.set(85)
>>        motor4.set(0)
>>        time.sleep(.2)
>>    if state == "S":
>>        motor1.set(0)
>>        motor4.set(0)
>>        time.sleep(.2)
>>    if state == "REV":
>>        motor1.set(-75)
>>        motor4.set(-75)
>>        time.sleep(.2)
>>    if state == "REV_L":
>>        motor1.set(-75)
>>        motor4.set(0)
>>        time.sleep(.2)
>>    if state == "REV_R":
>>        motor1.set(0)
>>        motor4.set(-75)
>>        time.sleep(.2)
>>
>>     template_data = {
>>        "title" : state,
>>    }
>>    return render_template("boboIV.html", **template_data)
>>
>> if __name__ == "__main__":
>>    app.run(host="0.0.0.0", port=5000, debug=True)
>>
>> ...
>>
>
>> Everything is "Pythonic" in the software but this C & P did not do it
>> justice. You can see why. Anyway...here is the HTML software too.
>>
>> <!DOCTYPE html>
>> <html lang="en">
>> <head>
>>  <title>{{ status }}</title>
>>  <meta charset="utf-8">
>>  <meta name="viewport" content="width=device-width, initial-scale=1">
>>  <link rel="stylesheet" href="
>> https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css";>
>>  <script src="
>> https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js";></
>> script>
>>  <script src="
>> https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js";></
>> script>
>> </head>
>> <body>
>>
>> <div class="jumbotron text-center">
>>  <h1>MotorCape and BBBW!</h1>
>>  <p>This is a quick example on making motors move!</p>
>> </div>
>>
>> <div class="container">
>>  <div class="row">
>>    <div class="col-sm-4 text-center">
>>      <h3>Agent One</h3>
>>      <p>More text and fun makings in life...</p>
>>      <p>Get ready to control some motors!</p>
>>    </div>
>>
>>     <div class="col-sm-4 text-center">
>>      <h3>Agent Two</h3>
>>      <p>This bunch of online buttons will make your motors move</p>
>>      <!--  <img src=" http://0.0.0.0/?"; "action=stream" alt="Unable to
>> get video feed" width="300" height="300"> -->
>>      <a href="/F" id="on" class="button">FORWARD</a>
>>      <br><br>
>>      <a href="/L" id="on" class="button">LEFT</a>
>>      <a href="/R" id="on" class="button">RIGHT</a>
>>      <br><br>
>>      <a href="/S" id="on" class="button">STOP</a>
>>
>

-- 
For more options, visit http://beagleboard.org/discuss
--- 
You received this message because you are subscribed to the Google Groups 
"BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/beagleboard/CA%2BT6QPnjPdLBQGtEc7eymYsD%2Bd8V5H%3DhvNS3BcvyJThQFmcR6g%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to