Facebook
From Szymon , 4 Years ago, written in Python.
Embed
Download Paste or View Raw
Hits: 229
  1. """
  2. Blynk is a platform with iOS and Android apps to control
  3.  
  4. This example shows how to display custom data on the widget.
  5.  
  6. In your Blynk App project:
  7.  Add a Value Display widget,
  8.  bind it to Virtual Pin V2,
  9.  set the read frequency to 1 second.
  10.  Run the App (green triangle in the upper right corner).
  11.  
  12. It will automagically call v2_read_handler.
  13. Calling virtual_write updates widget value.
  14. """
  15.  
  16. import BlynkLib
  17. import time
  18. import Adafruit_ADS1x15
  19. import time
  20. from PCA9685 import PCA9685
  21.  
  22. pwm = PCA9685(0x40, debug=False)
  23. pwm.setPWMFreq(500)
  24.  
  25. adc = Adafruit_ADS1x15.ADS1115()
  26. GAIN = 2/3
  27. MNOZNIK = 6.144/32768
  28. motor21=0;
  29. motor22=0;
  30. motor1=0;
  31. motor2=0;
  32. motorstart=0
  33. BLYNK_AUTH = 'c7d795df4c604c719f80ba67e6ff78d5'
  34. # Initialize Blynk
  35. blynk = BlynkLib.Blynk(BLYNK_AUTH)
  36.  
  37. # Register virtual pin handler
  38. @blynk.VIRTUAL_READ(11)
  39. def v11_read_handler():
  40.     prad = adc.read_adc(0, gain=GAIN)-12870 #12770
  41.     #bat1B = (bat1B + bat1A) / 2
  42.     bat1A = adc.read_adc(2, gain=GAIN) * MNOZNIK * 2.99
  43.     batacc = adc.read_adc(3, gain=GAIN) * MNOZNIK * 2.99 #* 1.02
  44.     prad = prad * MNOZNIK / 0.1
  45.     bat2 = batacc - bat1A
  46.     #print('Action')
  47.     # This widget will show some time in seconds..
  48.     #blynk.virtual_write(11, values) #time.ticks_ms() // 1000)
  49.     blynk.virtual_write(11, prad)
  50.     blynk.virtual_write(12, bat1A)
  51.     blynk.virtual_write(13, bat2)
  52.     blynk.virtual_write(14, batacc)
  53.  
  54.  
  55. # Register virtual pin handler
  56. @blynk.VIRTUAL_WRITE(21)
  57. def v21_write_handler(value21):
  58.     motor21 = value21
  59.     motorstart=1
  60.     print('Current slider value: {}'.format(motor21))
  61.  
  62. # Register virtual pin handler
  63. @blynk.VIRTUAL_WRITE(22)
  64. def v22_write_handler(value22):
  65.     motor22 = value22
  66.     motorstart=1
  67.     print('Current slider value: {}'.format(motor22))
  68.  
  69. # Start Blynk (this call should never return)
  70. while True:
  71.     blynk.run()
  72.     if motorstart==1:
  73.         motorstart=0
  74.         motor1 = motor21
  75.         motor2 = motor22
  76.         pwm.MotorRun(motor1, motor2)
  77.         print('Current slider value: {} - {}'.format(motor1, motor2))
  78.  
  79.  
  80.  
  81.  
  82.  
  83.  
  84.