VHDL Tutorial: Stepper Motor Controller

June 14, 2008

Chào các bạn.

Trong bài này mình xin giới thiệu các bạn một component để điểu khiển động cơ bước đơn cực.

Mình gửi các bạn báo cáo mà mình đã viết có chi tiết  về cách mô phỏng và mã của chương trình và thực hiện trên kit Spartan 3E.

1. Giao diện vào ra

Bộ điều khiển có đầu vào là:

  • Clk: Xung clock sẽ quyết định tốc độ động cơ.
  • Rst: Tín hiệu reset lại trạng thái ban đầu.
  • En : Tín hiệu xác định động cơ ở chế độ quay hay ở chế độ giữ.
  • Dir:  Điều khiển chiều quay của động cơ

Đầu ra là 4 bit đến điều khiển mạch lực.

entity Stepper_Motor_Controller is
    Port ( clk : in  STD_LOGIC;	   -- input to determine spped of rotation
           rst : in  STD_LOGIC;    -- resets and initializes the circuit
           en  : in  STD_LOGIC;    -- determine whether motor rotating or holding
           dir : in  STD_LOGIC;    -- motor direction control
 
           ph  : out STD_LOGIC_VECTOR(4 downto 1) -- output to phase 1 to 4 motor
	 );
end Stepper_Motor_Controller;

2. Thực thi thuật toán

Mình thực hiện thuật toán để đưa ra 4 xung điều khiển động cơ rất là đơn giản. Các bạn thử nghĩ xem mình làm thế nào nhé.

architecture Behavioral of Stepper_Motor_Controller is
	signal   step_pattern : std_logic_vector(7 downto 0):= "11100000"; --initial value puts one LED on near the middle.
 
begin
	process(clk,rst) begin
		if rst = '1' then
			step_pattern <= "11100000";
 
		else
			if clk'event and clk = '1' then
			-- If clk event occours then shift
				if en = '1' then
					if dir = '1' then
						step_pattern <= step_pattern(6 downto 0) &amp; step_pattern(7);
					else
						step_pattern <= step_pattern(0) &amp; step_pattern(7 downto 1) ;
					end if;
				end if;
			end if;
		end if;
	end process;
 
	-- Update values to the phases
	ph(1) <= step_pattern(0);
	ph(2) <= step_pattern(6);
	ph(3) <= step_pattern(4);
	ph(4) <= step_pattern(2);
 
end Behavioral;

REP02.02.FPGA.NOHB.281107.pdf

Các bài viết liên quan:

  1. Stepper motor: Bài học về nghiên cứu của anh Hiệp Chào các bạn. Sáng nay tìm tài liệu thêm về động cơ bước, search ngay ra blog yahoo của anh Hiêp (Falleaf.net) đọc thấy rất hay nên muốn post lên cho các bạn. Theo mình nghĩ thì đó quả là bài học hay chúng ta nên học. Link đến blog: http://blog.360.yahoo.com/blog-NZLTSEw3eqq4mtOZsDRN7w–?cq=1&tag=microchip Anh Hiệp đã dịch [...]...
  2. Một số tài liệu ngôn ngữ mô tả phần cứng VHDL, Verilog Chào các bạn. Mình gửi cho các bạn một số tài liệu về VHDL và Verilog. Download Advanced Xilinx FPGA Design Through Verilog HDL.pdf Digital Design with CPLD Applications and VHDL By Dueck Electronics-Verilog.Digital.Design.Synthesis Verilog HDL Reference Manual VHDL-Cookbook Xilinx VHDL Tutorial...
  3. FPGA Demo Chào các bạn. Mấy hôm trước mình làm Seminar ở Lab có quay mấy cái video demo cho mọi người xem nên upload để giới thiệu luôn cho các bạn để chia sẻ kinh nghiệm với các bạn. Mình làm FPGA chưa lâu nên mọi thứ cũng gần như là bắt đầu với mình. Sang [...]...
  4. PicoBlaze 8-bit Embedded Microcontroller Nhân tiện đang làm đồ án về FPGA nên post luôn cái báo cáo về phần PicoBlaze lên cho các bạn . Để mình bảo vệ xong, mình rảnh sẽ post một số bài như giới thiệu một vài điều về VHDL chẳng hạn và một số ứng dụng cụ thể. 1. Giới thiệu chung [...]...
  5. Đồ án tốt nghiệp: Thiết kế hệ thống xử lý ảnh số trên nền FPGA Chào các bạn. Ngày 4/06/2008 vừa rồi mình đã bảo vệ tốt nghiệp với đề tài: Thiết kế hệ thống xử lý ảnh số trên nền FPGA. Vì thế nên để chia sẻ cho các bạn, với hi vọng bạn nào đó sẽ tiếp tục phát triển đồ án của bọn mình. Kit của XESS [...]...
  6. Lập trình C cho vi điều khiển Mình tham gia các diễn đàn từ lâu lắm rồi và cũng giải đáp nhiều thắc mắc về lập trình C cho các vi điều khiển thông dụng như 8051, PIC. Mình viết bài này để giải đáp thắc mắc cho các bạn mới bước vào học lập trình cho vi điều khiển dùng ngôn [...]...

{ 1 comment… read it below or add one }

1 Tran Le December 8, 2008 at 10:30 pm

Anh Bac oi .Em đang làm trên kit Coolruner II.Mà em vẫn chưa hiểu hết làm sao điều khiển động cơ bước bằng CPLD(coolrune)r.Anh gởi tài liệu giúp em tiếp cận dần với kit anh nhé.Em hi vọng FPGA-CPLD sẽ ngày một phát triển ở Việt Nam như PIC và 8051 vậy.CÁm ơn anh nhièu

Reply

Leave a Comment

CommentLuv Enabled

Previous post:

Next post: