Halvautomatisk talade threading maskin (2 / 3 steg)
Steg 2: elektronik
Mikrokontroller gränssnitten till H-bryggan som i sin tur styr motorn.
Jag använde bridge A L298N dubbla full-bridge föraren (http://www.digikey.com/product-detail/en/L298N/497-1395-5-ND/585918?WT.z_cid=ref_octopart_dkc_buynow).
Den innehåller en PIN-kod, aktivera A, som när låg, den stängs motorn av.
Du anger hög/låg INPUT 1/INPUT 2 att förbereda för medurs svarvning. och låg/hög för counter medurs. Knappen är knuten till en pull-up resistor och jordad när man trycker. Att aktivera en hög blir motorn kör, letar efter äventyr.
En PIC16F88 mikrokontroller användes men de flesta andra skulle göra lika.
På bilden är den förenklade schematiskt. Mjukvaran är skriven i JAL som följer i sin helhet...
--Detta program är för att kontrollera den cyclo talade threading maskin
--för halvautomatiskt spoke trädande maskin projektet på instructables
--av Carlitos
--B2 är input knappen knutna till pullup motstånd. Knappen som används är normalt på
--så normalt det är jordad. Att trycka på knappen orsakar input att gå höga.
--som utlöser motorstyrning cykel
--B4 är motor aktivera (high är aktiverat)
--B6, B7 är motor riktning där hög/låg är medurs och låg/hög är moturs
--motorstyrning cykel:
-- 1. Aktivera motor sätta till springa medurs
-- 2. springa medurs för x sekunder
-- 3. kör motsols för x + delta sekunder
-- 4. Inaktivera motor
inkludera 16f88
--Ange alla IO som digital
enable_digital_io()
pragma målet klockan 8_000_000
pragma mål OSC INTOSC_NOCLKOUT
OSCCON_IRCF = 0b_111
pragma mål WDT inaktiverad
--Utgångsstift
pin_b4_direction = utgång--motor aktivera
pin_b6_direction = utgång--motor i1
pin_b7_direction = utgång--motor i2
--Input pins
pin_b2_direction = ingång--knappen med pullup motstånd används för att utlösa motor
inkludera dröjsmål
var ordet delayclockwise = 90
var ordet delaycounterclockwise = 100
pin_b4 = low--inaktivera motor
pin_b6 = hög--ange för medurs
pin_b7 = låg--ange för medurs
för evigt loop
om pin_b2 == högt sedan--knappen nedtryckt
delay_100ms(5)
pin_b4 = hög--aktivera motor
delay_100ms(delayclockwise)
pin_b4 = low--inaktivera motor
pin_b6 = låg--ange för moturs
pin_b7 = hög--ange för moturs
pin_b4 = hög--aktivera motor
delay_100ms(delaycounterclockwise)
pin_b4 = low--inaktivera motor
pin_b6 = hög--ange för medurs
pin_b7 = låg--ange för medurs
slut om
delay_100ms(1)--vänta lite innan röstningen knappen
avsluta loop